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.

137 lines
2.6 KiB

  1. extern HINSTANCE ghUIInst;
  2. //extern const WCHAR gszCardKeyW[];
  3. //***************************************************************************
  4. //***************************************************************************
  5. //***************************************************************************
  6. void AllocNewID( HKEY MainKey, LPDWORD lpdw );
  7. void PASCAL WideStringToNotSoWideString( LPBYTE lpBase, LPDWORD lpdwThing );
  8. PWSTR PASCAL MultiToWide( LPCSTR lpStr );
  9. PWSTR PASCAL NotSoWideStringToWideString( LPCSTR lpStr, DWORD dwLength );
  10. //***************************************************************************
  11. //***************************************************************************
  12. //***************************************************************************
  13. typedef enum
  14. {
  15. Dword,
  16. lpDword,
  17. hXxxApp,
  18. hXxxApp_NULLOK,
  19. // lpsz,
  20. lpszW,
  21. lpGet_SizeToFollow,
  22. lpSet_SizeToFollow,
  23. lpSet_Struct,
  24. lpGet_Struct,
  25. Size,
  26. Hwnd
  27. } ARG_TYPE;
  28. typedef struct _FUNC_ARGS
  29. {
  30. DWORD Flags;
  31. ULONG_PTR Args[MAX_TAPI_FUNC_ARGS];
  32. BYTE ArgTypes[MAX_TAPI_FUNC_ARGS];
  33. } FUNC_ARGS, *PFUNC_ARGS;
  34. typedef struct _UI_REQUEST_THREAD_PARAMS
  35. {
  36. BOOL bRequestCompleted;
  37. PFUNC_ARGS pFuncArgs;
  38. LONG lResult;
  39. } UI_REQUEST_THREAD_PARAMS, *PUI_REQUEST_THREAD_PARAMS;
  40. typedef struct _INIT_DATA
  41. {
  42. DWORD dwKey;
  43. DWORD dwInitOptions;
  44. union
  45. {
  46. HWND hwnd;
  47. HANDLE hEvent;
  48. HANDLE hCompletionPort;
  49. };
  50. union
  51. {
  52. LINECALLBACK lpfnCallback;
  53. DWORD dwCompletionKey;
  54. };
  55. HLINEAPP hXxxApp;
  56. BOOL bPendingAsyncEventMsg;
  57. DWORD dwNumTotalEntries;
  58. DWORD dwNumUsedEntries;
  59. PASYNC_EVENT_PARAMS pEventBuffer;
  60. PASYNC_EVENT_PARAMS pValidEntry;
  61. PASYNC_EVENT_PARAMS pFreeEntry;
  62. DWORD dwNumLines;
  63. BOOL bLine;
  64. DWORD dwThreadID;
  65. } INIT_DATA, *PINIT_DATA;
  66. #if DBG
  67. #define DBGOUT(arg) DbgPrt arg
  68. VOID
  69. DbgPrt(
  70. IN DWORD dwDbgLevel,
  71. IN PUCHAR DbgMessage,
  72. IN ...
  73. );
  74. DWORD gdwDebugLevel;
  75. #define DOFUNC(arg1,arg2) DoFunc(arg1,arg2)
  76. LONG
  77. WINAPI
  78. DoFunc(
  79. PFUNC_ARGS pFuncArgs,
  80. char *pszFuncName
  81. );
  82. #else
  83. #define DBGOUT(arg)
  84. #define DOFUNC(arg1,arg2) DoFunc(arg1)
  85. LONG
  86. WINAPI
  87. DoFunc(
  88. PFUNC_ARGS pFuncArgs
  89. );
  90. #endif