Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

77 lines
2.5 KiB

  1. /////////////////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 1998 Active Voice Corporation. All Rights Reserved.
  4. //
  5. // Active Agent(r) and Unified Communications(tm) are trademarks of Active Voice Corporation.
  6. //
  7. // Other brand and product names used herein are trademarks of their respective owners.
  8. //
  9. // The entire program and user interface including the structure, sequence, selection,
  10. // and arrangement of the dialog, the exclusively "yes" and "no" choices represented
  11. // by "1" and "2," and each dialog message are protected by copyrights registered in
  12. // the United States and by international treaties.
  13. //
  14. // Protected by one or more of the following United States patents: 5,070,526, 5,488,650,
  15. // 5,434,906, 5,581,604, 5,533,102, 5,568,540, 5,625,676, 5,651,054.
  16. //
  17. // Active Voice Corporation
  18. // Seattle, Washington
  19. // USA
  20. //
  21. /////////////////////////////////////////////////////////////////////////////////////////
  22. ////
  23. // arg.h - interface for command line argument functions in arg.c
  24. ////
  25. #ifndef __ARG_H__
  26. #define __ARG_H__
  27. #include "winlocal.h"
  28. #define ARG_VERSION 0x00000100
  29. // handle to arg engine
  30. //
  31. DECLARE_HANDLE32(HARG);
  32. #ifdef __cplusplus
  33. extern "C" {
  34. #endif
  35. // ArgInit - initialize arg engine, converting <lpszCmdLine> to argc and argv
  36. // <dwVersion> (i) must be ARG_VERSION
  37. // <hInst> (i) instance handle of calling module
  38. // <lpszCmdLine> (i) command line from WinMain()
  39. // return handle (NULL if error)
  40. //
  41. HARG DLLEXPORT WINAPI ArgInit(DWORD dwVersion, HINSTANCE hInst, LPCTSTR lpszCmdLine);
  42. // ArgTerm - shut down arg engine
  43. // <hArg> (i) handle returned from ArgInit
  44. // return 0 if success
  45. //
  46. int DLLEXPORT WINAPI ArgTerm(HARG hArg);
  47. // ArgGetCount - get argument count (argc)
  48. // <hArg> (i) handle returned from ArgInit
  49. // return number of arguments (argc) (0 if error)
  50. // there should always be at least one, since argv[0] is .EXE file name
  51. //
  52. int DLLEXPORT WINAPI ArgGetCount(HARG hArg);
  53. // ArgGet - get specified argument
  54. // <hArg> (i) handle returned from ArgInit
  55. // <iArg> (i) zero based index of argument to get
  56. // <lpszArg> (o) buffer to hold argument argv[iArg]
  57. // NULL do not copy; return static pointer instead
  58. // <sizArg> (i) size of buffer
  59. // return pointer to argument (NULL if error)
  60. //
  61. LPTSTR DLLEXPORT WINAPI ArgGet(HARG hArg, int iArg, LPTSTR lpszArg, int sizArg);
  62. #ifdef __cplusplus
  63. }
  64. #endif
  65. #endif // __ARG_H__