home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / vc98 / include / rasdlg.h < prev    next >
C/C++ Source or Header  |  1998-04-25  |  6KB  |  271 lines

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