RasDlg.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:8k
源码类别:

模拟服务器

开发平台:

C/C++

  1. /*++
  2. Copyright (c) Microsoft Corporation. All rights reserved.
  3. Module Name:
  4.     rasdlg.h
  5. Abstract:
  6.     Remote Access Common Dialog APIs
  7.     These APIs live in RASDLG.DLL.
  8.     The APIs in this header are added in Windows NT SUR and are not available
  9.     in prior Windows NT or Windows 95 releases.
  10.     
  11. --*/
  12. #ifndef _RASDLG_H_
  13. #define _RASDLG_H_
  14. #if _MSC_VER > 1000
  15. #pragma once
  16. #endif
  17. #include <pshpack4.h>
  18. #ifdef __cplusplus
  19. extern "C" {
  20. #endif
  21. #include <ras.h>
  22. /* RasPhonebookDlg API callback.
  23. */
  24. typedef VOID (WINAPI* RASPBDLGFUNCW)( ULONG_PTR, DWORD, LPWSTR, LPVOID );
  25. typedef VOID (WINAPI* RASPBDLGFUNCA)( ULONG_PTR, DWORD, LPSTR, LPVOID );
  26. #define RASPBDEVENT_AddEntry    1
  27. #define RASPBDEVENT_EditEntry   2
  28. #define RASPBDEVENT_RemoveEntry 3
  29. #define RASPBDEVENT_DialEntry   4
  30. #define RASPBDEVENT_EditGlobals 5
  31. #define RASPBDEVENT_NoUser      6
  32. #define RASPBDEVENT_NoUserEdit  7
  33. #define  RASNOUSER_SmartCard    0x00000001
  34. /* Defines the information passed in the 4th argument of RASPBDLGFUNC on
  35. ** "NoUser" and "NoUserEdit" events.  Usage shown is for "NoUser".  For
  36. ** "NoUserEdit", the timeout is ignored and the three strings are INs.
  37. */
  38. #define RASNOUSERW struct tagRASNOUSERW
  39. RASNOUSERW
  40. {
  41.     IN  DWORD dwSize;
  42.     IN  DWORD dwFlags;
  43.     OUT DWORD dwTimeoutMs;
  44.     OUT WCHAR szUserName[ UNLEN + 1 ];
  45.     OUT WCHAR szPassword[ PWLEN + 1 ];
  46.     OUT WCHAR szDomain[ DNLEN + 1 ];
  47. };
  48. #define RASNOUSERA struct tagRASNOUSERA
  49. RASNOUSERA
  50. {
  51.     IN  DWORD dwSize;
  52.     IN  DWORD dwFlags;
  53.     OUT DWORD dwTimeoutMs;
  54.     OUT CHAR  szUserName[ UNLEN + 1 ];
  55.     OUT CHAR  szPassword[ PWLEN + 1 ];
  56.     OUT CHAR  szDomain[ DNLEN + 1 ];
  57. };
  58. #ifdef UNICODE
  59. #define RASNOUSER RASNOUSERW
  60. #else
  61. #define RASNOUSER RASNOUSERA
  62. #endif
  63. #define LPRASNOUSERW RASNOUSERW*
  64. #define LPRASNOUSERA RASNOUSERA*
  65. #define LPRASNOUSER  RASNOUSER*
  66. /* RasPhonebookDlg API parameters.
  67. */
  68. #define RASPBDFLAG_PositionDlg      0x00000001
  69. #define RASPBDFLAG_ForceCloseOnDial 0x00000002
  70. #define RASPBDFLAG_NoUser           0x00000010
  71. #define RASPBDFLAG_UpdateDefaults   0x80000000
  72. #define RASPBDLGW struct tagRASPBDLGW
  73. RASPBDLGW
  74. {
  75.     IN  DWORD         dwSize;
  76.     IN  HWND          hwndOwner;
  77.     IN  DWORD         dwFlags;
  78.     IN  LONG          xDlg;
  79.     IN  LONG          yDlg;
  80.     IN  ULONG_PTR     dwCallbackId;
  81.     IN  RASPBDLGFUNCW pCallback;
  82.     OUT DWORD         dwError;
  83.     IN  ULONG_PTR     reserved;
  84.     IN  ULONG_PTR     reserved2;
  85. };
  86. #define RASPBDLGA struct tagRASPBDLGA
  87. RASPBDLGA
  88. {
  89.     IN  DWORD         dwSize;
  90.     IN  HWND          hwndOwner;
  91.     IN  DWORD         dwFlags;
  92.     IN  LONG          xDlg;
  93.     IN  LONG          yDlg;
  94.     IN  ULONG_PTR     dwCallbackId;
  95.     IN  RASPBDLGFUNCA pCallback;
  96.     OUT DWORD         dwError;
  97.     IN  ULONG_PTR     reserved;
  98.     IN  ULONG_PTR     reserved2;
  99. };
  100. #ifdef UNICODE
  101. #define RASPBDLG     RASPBDLGW
  102. #define RASPBDLGFUNC RASPBDLGFUNCW
  103. #else
  104. #define RASPBDLG     RASPBDLGA
  105. #define RASPBDLGFUNC RASPBDLGFUNCA
  106. #endif
  107. #define LPRASPBDLGW RASPBDLGW*
  108. #define LPRASPBDLGA RASPBDLGA*
  109. #define LPRASPBDLG  RASPBDLG*
  110. /* RasEntryDlg API parameters.
  111. */
  112. #define RASEDFLAG_PositionDlg    0x00000001
  113. #define RASEDFLAG_NewEntry       0x00000002
  114. #define RASEDFLAG_CloneEntry     0x00000004
  115. #define RASEDFLAG_NoRename       0x00000008
  116. #define RASEDFLAG_ShellOwned     0x40000000
  117. #define RASEDFLAG_NewPhoneEntry  0x00000010
  118. #define RASEDFLAG_NewTunnelEntry 0x00000020
  119. #define RASEDFLAG_NewDirectEntry 0x00000040
  120. #define RASEDFLAG_NewBroadbandEntry  0x00000080
  121. #define RASEDFLAG_InternetEntry  0x00000100
  122. #define RASENTRYDLGW struct tagRASENTRYDLGW
  123. RASENTRYDLGW
  124. {
  125.     IN  DWORD dwSize;
  126.     IN  HWND  hwndOwner;
  127.     IN  DWORD dwFlags;
  128.     IN  LONG  xDlg;
  129.     IN  LONG  yDlg;
  130.     OUT WCHAR szEntry[ RAS_MaxEntryName + 1 ];
  131.     OUT DWORD dwError;
  132.     IN  ULONG_PTR reserved;
  133.     IN  ULONG_PTR reserved2;
  134. };
  135. #define RASENTRYDLGA struct tagRASENTRYDLGA
  136. RASENTRYDLGA
  137. {
  138.     IN  DWORD dwSize;
  139.     IN  HWND  hwndOwner;
  140.     IN  DWORD dwFlags;
  141.     IN  LONG  xDlg;
  142.     IN  LONG  yDlg;
  143.     OUT CHAR  szEntry[ RAS_MaxEntryName + 1 ];
  144.     OUT DWORD dwError;
  145.     IN  ULONG_PTR reserved;
  146.     IN  ULONG_PTR reserved2;
  147. };
  148. #ifdef UNICODE
  149. #define RASENTRYDLG RASENTRYDLGW
  150. #else
  151. #define RASENTRYDLG RASENTRYDLGA
  152. #endif
  153. #define LPRASENTRYDLGW RASENTRYDLGW*
  154. #define LPRASENTRYDLGA RASENTRYDLGA*
  155. #define LPRASENTRYDLG  RASENTRYDLG*
  156. /* RasDialDlg API parameters.
  157. */
  158. #define RASDDFLAG_PositionDlg 0x00000001
  159. #define RASDDFLAG_NoPrompt    0x00000002
  160. #define RASDDFLAG_LinkFailure 0x80000000
  161. #define RASDIALDLG struct tagRASDIALDLG
  162. RASDIALDLG
  163. {
  164.     IN  DWORD dwSize;
  165.     IN  HWND  hwndOwner;
  166.     IN  DWORD dwFlags;
  167.     IN  LONG  xDlg;
  168.     IN  LONG  yDlg;
  169.     IN  DWORD dwSubEntry;
  170.     OUT DWORD dwError;
  171.     IN  ULONG_PTR reserved;
  172.     IN  ULONG_PTR reserved2;
  173. };
  174. #define LPRASDIALDLG RASDIALDLG*
  175. /* RasMonitorDlg API parameters.
  176. */
  177. #if (WINVER <= 0x500)
  178. #define RASMDPAGE_Status            0
  179. #define RASMDPAGE_Summary           1
  180. #define RASMDPAGE_Preferences       2
  181. #define RASMDFLAG_PositionDlg       0x00000001
  182. #define RASMDFLAG_UpdateDefaults    0x80000000
  183. #define RASMONITORDLG struct tagRASMONITORDLG
  184. RASMONITORDLG
  185. {
  186.     IN  DWORD dwSize;
  187.     IN  HWND  hwndOwner;
  188.     IN  DWORD dwFlags;
  189.     IN  DWORD dwStartPage;
  190.     IN  LONG  xDlg;
  191.     IN  LONG  yDlg;
  192.     OUT DWORD dwError;
  193.     IN  ULONG_PTR reserved;
  194.     IN  ULONG_PTR reserved2;
  195. };
  196. #define LPRASMONITORDLG RASMONITORDLG*
  197. #endif
  198. #if (WINVER >= 0x500)
  199. typedef BOOL (WINAPI *RasCustomDialDlgFn) (
  200.                             HINSTANCE hInstDll,
  201.                             DWORD dwFlags,
  202.                             LPTSTR lpszPhonebook,
  203.                             LPTSTR lpszEntry,
  204.                             LPTSTR lpszPhoneNumber,
  205.                             LPRASDIALDLG lpInfo,
  206.                             PVOID pvInfo
  207.                             );
  208. typedef BOOL (WINAPI *RasCustomEntryDlgFn) (
  209.                             HINSTANCE hInstDll,
  210.                             LPTSTR lpszPhonebook,
  211.                             LPTSTR lpszEntry,
  212.                             LPRASENTRYDLG lpInfo,
  213.                             DWORD  dwFlags
  214.                             );
  215. #endif
  216. /* RAS common dialog API prototypes.
  217. */
  218. BOOL APIENTRY RasPhonebookDlgA(
  219.     LPSTR lpszPhonebook, LPSTR lpszEntry, LPRASPBDLGA lpInfo );
  220. BOOL APIENTRY RasPhonebookDlgW(
  221.     LPWSTR lpszPhonebook, LPWSTR lpszEntry, LPRASPBDLGW lpInfo );
  222. BOOL APIENTRY RasEntryDlgA(
  223.     LPSTR lpszPhonebook, LPSTR lpszEntry, LPRASENTRYDLGA lpInfo );
  224. BOOL APIENTRY RasEntryDlgW(
  225.     LPWSTR lpszPhonebook, LPWSTR lpszEntry, LPRASENTRYDLGW lpInfo );
  226. BOOL APIENTRY RasDialDlgA(
  227.     LPSTR lpszPhonebook, LPSTR lpszEntry, LPSTR lpszPhoneNumber,
  228.     LPRASDIALDLG lpInfo );
  229. BOOL APIENTRY RasDialDlgW(
  230.     LPWSTR lpszPhonebook, LPWSTR lpszEntry, LPWSTR lpszPhoneNumber,
  231.     LPRASDIALDLG lpInfo );
  232. #if (WINVER <= 0x500)
  233. BOOL APIENTRY RasMonitorDlgA(
  234.     LPSTR lpszDeviceName, LPRASMONITORDLG lpInfo );
  235. BOOL APIENTRY RasMonitorDlgW(
  236.     LPWSTR lpszDeviceName, LPRASMONITORDLG lpInfo );
  237. #endif
  238. #ifdef UNICODE
  239. #define RasPhonebookDlg RasPhonebookDlgW
  240. #define RasEntryDlg     RasEntryDlgW
  241. #define RasDialDlg      RasDialDlgW
  242. #if (WINVER <= 0x500)
  243. #define RasMonitorDlg   RasMonitorDlgW
  244. #endif
  245. #else
  246. #define RasPhonebookDlg RasPhonebookDlgA
  247. #define RasEntryDlg     RasEntryDlgA
  248. #define RasDialDlg      RasDialDlgA
  249. #if (WINVER <= 0x500)
  250. #define RasMonitorDlg   RasMonitorDlgA
  251. #endif
  252. #endif
  253. #ifdef __cplusplus
  254. }
  255. #endif
  256. #include <poppack.h>
  257. #endif // _RASDLG_H_