📄 ras.h
字号:
#ifndef _RAS_H#define _RAS_H#if __GNUC__ >=3#pragma GCC system_header#endif#ifdef __cplusplusextern "C"{#endif#ifndef _LMCONS_H#include <lmcons.h>#endif/* TODOinclude <basetsd.h> from winnt.h so that this typedef is not necessary*/#ifndef _BASETSD_Htypedef unsigned long ULONG_PTR, *PULONG_PTR;#endif#include <pshpack4.h>#define RAS_MaxDeviceType 16#define RAS_MaxPhoneNumber 128#define RAS_MaxIpAddress 15#define RAS_MaxIpxAddress 21#define RAS_MaxEntryName 256#define RAS_MaxDeviceName 128#define RAS_MaxCallbackNumber RAS_MaxPhoneNumber#define RAS_MaxAreaCode 10#define RAS_MaxPadType 32#define RAS_MaxX25Address 200#define RAS_MaxFacilities 200#define RAS_MaxUserData 200#define RAS_MaxReplyMessage 1024#define RDEOPT_UsePrefixSuffix 0x00000001#define RDEOPT_PausedStates 0x00000002#define RDEOPT_IgnoreModemSpeaker 0x00000004#define RDEOPT_SetModemSpeaker 0x00000008#define RDEOPT_IgnoreSoftwareCompression 0x00000010#define RDEOPT_SetSoftwareCompression 0x00000020#define RDEOPT_DisableConnectedUI 0x00000040#define RDEOPT_DisableReconnectUI 0x00000080#define RDEOPT_DisableReconnect 0x00000100#define RDEOPT_NoUser 0x00000200#define RDEOPT_PauseOnScript 0x00000400#define RDEOPT_Router 0x00000800#define REN_User 0x00000000#define REN_AllUsers 0x00000001#define VS_Default 0#define VS_PptpOnly 1#define VS_PptpFirst 2#define VS_L2tpOnly 3#define VS_L2tpFirst 4#define RASDIALEVENT "RasDialEvent"#define WM_RASDIALEVENT 0xCCCD#define RASEO_UseCountryAndAreaCodes 0x00000001#define RASEO_SpecificIpAddr 0x00000002#define RASEO_SpecificNameServers 0x00000004#define RASEO_IpHeaderCompression 0x00000008#define RASEO_RemoteDefaultGateway 0x00000010#define RASEO_DisableLcpExtensions 0x00000020#define RASEO_TerminalBeforeDial 0x00000040#define RASEO_TerminalAfterDial 0x00000080#define RASEO_ModemLights 0x00000100#define RASEO_SwCompression 0x00000200#define RASEO_RequireEncryptedPw 0x00000400#define RASEO_RequireMsEncryptedPw 0x00000800#define RASEO_RequireDataEncryption 0x00001000#define RASEO_NetworkLogon 0x00002000#define RASEO_UseLogonCredentials 0x00004000#define RASEO_PromoteAlternates 0x00008000#define RASNP_NetBEUI 0x00000001#define RASNP_Ipx 0x00000002#define RASNP_Ip 0x00000004#define RASFP_Ppp 0x00000001#define RASFP_Slip 0x00000002#define RASFP_Ras 0x00000004#define RASDT_Modem TEXT("modem")#define RASDT_Isdn TEXT("isdn")#define RASDT_X25 TEXT("x25")#define RASDT_Vpn TEXT("vpn")#define RASDT_Pad TEXT("pad")#define RASDT_Generic TEXT("GENERIC")#define RASDT_Serial TEXT("SERIAL")#define RASDT_FrameRelay TEXT("FRAMERELAY")#define RASDT_Atm TEXT("ATM")#define RASDT_Sonet TEXT("SONET")#define RASDT_SW56 TEXT("SW56")#define RASDT_Irda TEXT("IRDA")#define RASDT_Parallel TEXT("PARALLEL")#define RASET_Phone 1#define RASET_Vpn 2#define RASET_Direct 3#define RASET_Internet 4#if (WINVER >= 0x401)#define RASEO_SecureLocalFiles 0x00010000#define RASCN_Connection 0x00000001#define RASCN_Disconnection 0x00000002#define RASCN_BandwidthAdded 0x00000004#define RASCN_BandwidthRemoved 0x00000008#define RASEDM_DialAll 1#define RASEDM_DialAsNeeded 2#define RASIDS_Disabled 0xffffffff#define RASIDS_UseGlobalValue 0#define RASADFLG_PositionDlg 0x00000001#define RASCM_UserName 0x00000001#define RASCM_Password 0x00000002#define RASCM_Domain 0x00000004#define RASADP_DisableConnectionQuery 0#define RASADP_LoginSessionDisable 1#define RASADP_SavedAddressesLimit 2#define RASADP_FailedConnectionTimeout 3#define RASADP_ConnectionQueryTimeout 4#endif /* (WINVER >= 0x401) */#if (WINVER >= 0x500)#define RDEOPT_CustomDial 0x00001000#define RASLCPAP_PAP 0xC023#define RASLCPAP_SPAP 0xC027#define RASLCPAP_CHAP 0xC223#define RASLCPAP_EAP 0xC227#define RASLCPAD_CHAP_MD5 0x05#define RASLCPAD_CHAP_MS 0x80#define RASLCPAD_CHAP_MSV2 0x81#define RASLCPO_PFC 0x00000001#define RASLCPO_ACFC 0x00000002#define RASLCPO_SSHF 0x00000004#define RASLCPO_DES_56 0x00000008#define RASLCPO_3_DES 0x00000010#define RASCCPCA_MPPC 0x00000006#define RASCCPCA_STAC 0x00000005#define RASCCPO_Compression 0x00000001#define RASCCPO_HistoryLess 0x00000002#define RASCCPO_Encryption56bit 0x00000010#define RASCCPO_Encryption40bit 0x00000020#define RASCCPO_Encryption128bit 0x00000040#define RASEO_RequireEAP 0x00020000#define RASEO_RequirePAP 0x00040000#define RASEO_RequireSPAP 0x00080000#define RASEO_Custom 0x00100000#define RASEO_PreviewPhoneNumber 0x00200000#define RASEO_SharedPhoneNumbers 0x00800000#define RASEO_PreviewUserPw 0x01000000#define RASEO_PreviewDomain 0x02000000#define RASEO_ShowDialingProgress 0x04000000#define RASEO_RequireCHAP 0x08000000#define RASEO_RequireMsCHAP 0x10000000#define RASEO_RequireMsCHAP2 0x20000000#define RASEO_RequireW95MSCHAP 0x40000000#define RASEO_CustomScript 0x80000000#define RASIPO_VJ 0x00000001#define RCD_SingleUser 0#define RCD_AllUsers 0x00000001#define RCD_Eap 0x00000002#define RASEAPF_NonInteractive 0x00000002#define RASEAPF_Logon 0x00000004#define RASEAPF_Preview 0x00000008#define ET_40Bit 1#define ET_128Bit 2#define ET_None 0#define ET_Require 1#define ET_RequireMax 2#define ET_Optional 3#endif /* (WINVER >= 0x500) */#define RASCS_PAUSED 0x1000#define RASCS_DONE 0x2000typedef enum tagRASCONNSTATE { RASCS_OpenPort = 0, RASCS_PortOpened, RASCS_ConnectDevice, RASCS_DeviceConnected, RASCS_AllDevicesConnected, RASCS_Authenticate, RASCS_AuthNotify, RASCS_AuthRetry, RASCS_AuthCallback, RASCS_AuthChangePassword, RASCS_AuthProject, RASCS_AuthLinkSpeed, RASCS_AuthAck, RASCS_ReAuthenticate, RASCS_Authenticated, RASCS_PrepareForCallback, RASCS_WaitForModemReset, RASCS_WaitForCallback, RASCS_Projected, RASCS_StartAuthentication, RASCS_CallbackComplete, RASCS_LogonNetwork, RASCS_SubEntryConnected, RASCS_SubEntryDisconnected, RASCS_Interactive = RASCS_PAUSED, RASCS_RetryAuthentication, RASCS_CallbackSetByCaller, RASCS_PasswordExpired,#if (WINVER >= 0x500) RASCS_InvokeEapUI,#endif RASCS_Connected = RASCS_DONE, RASCS_Disconnected} RASCONNSTATE, *LPRASCONNSTATE;typedef enum tagRASPROJECTION { RASP_Amb = 0x10000, RASP_PppNbf = 0x803F, RASP_PppIpx = 0x802B, RASP_PppIp = 0x8021,#if (WINVER >= 0x500) RASP_PppCcp = 0x80FD,#endif RASP_PppLcp = 0xC021, RASP_Slip = 0x20000} RASPROJECTION, *LPRASPROJECTION;DECLARE_HANDLE (HRASCONN);typedef HRASCONN* LPHRASCONN;typedef struct tagRASCONNW { DWORD dwSize; HRASCONN hrasconn; WCHAR szEntryName[RAS_MaxEntryName + 1];#if (WINVER >= 0x400) WCHAR szDeviceType[RAS_MaxDeviceType + 1]; WCHAR szDeviceName[RAS_MaxDeviceName + 1];#endif#if (WINVER >= 0x401) WCHAR szPhonebook[MAX_PATH]; DWORD dwSubEntry;#endif#if (WINVER >= 0x500) GUID guidEntry;#endif#if (WINVER >= 0x501) DWORD dwFlags; LUID luid;#endif} RASCONNW, *LPRASCONNW;typedef struct tagRASCONNA { DWORD dwSize; HRASCONN hrasconn; CHAR szEntryName[RAS_MaxEntryName + 1];#if (WINVER >= 0x400) CHAR szDeviceType[RAS_MaxDeviceType + 1]; CHAR szDeviceName[RAS_MaxDeviceName + 1];#endif#if (WINVER >= 0x401) CHAR szPhonebook[MAX_PATH]; DWORD dwSubEntry;#endif#if (WINVER >= 0x500) GUID guidEntry;#endif#if (WINVER >= 0x501) DWORD dwFlags; LUID luid;#endif} RASCONNA, *LPRASCONNA;typedef struct tagRASCONNSTATUSW { DWORD dwSize; RASCONNSTATE rasconnstate; DWORD dwError; WCHAR szDeviceType[RAS_MaxDeviceType + 1]; WCHAR szDeviceName[RAS_MaxDeviceName + 1];#if (WINVER >= 0x401) WCHAR szPhoneNumber[RAS_MaxPhoneNumber + 1];#endif} RASCONNSTATUSW, *LPRASCONNSTATUSW;typedef struct tagRASCONNSTATUSA { DWORD dwSize; RASCONNSTATE rasconnstate; DWORD dwError; CHAR szDeviceType[RAS_MaxDeviceType + 1]; CHAR szDeviceName[RAS_MaxDeviceName + 1];#if (WINVER >= 0x401) CHAR szPhoneNumber[RAS_MaxPhoneNumber + 1];#endif} RASCONNSTATUSA, *LPRASCONNSTATUSA;typedef struct tagRASDIALPARAMSW { DWORD dwSize; WCHAR szEntryName[RAS_MaxEntryName + 1]; WCHAR szPhoneNumber[RAS_MaxPhoneNumber + 1]; WCHAR szCallbackNumber[RAS_MaxCallbackNumber + 1]; WCHAR szUserName[UNLEN + 1]; WCHAR szPassword[PWLEN + 1]; WCHAR szDomain[DNLEN + 1];#if (WINVER >= 0x401) DWORD dwSubEntry; ULONG_PTR dwCallbackId;#endif} RASDIALPARAMSW, *LPRASDIALPARAMSW;typedef struct tagRASDIALPARAMSA { DWORD dwSize; CHAR szEntryName[RAS_MaxEntryName + 1]; CHAR szPhoneNumber[RAS_MaxPhoneNumber + 1]; CHAR szCallbackNumber[RAS_MaxCallbackNumber + 1]; CHAR szUserName[UNLEN + 1]; CHAR szPassword[PWLEN + 1]; CHAR szDomain[DNLEN + 1];#if (WINVER >= 0x401) DWORD dwSubEntry; ULONG_PTR dwCallbackId;#endif} RASDIALPARAMSA, *LPRASDIALPARAMSA;#if (WINVER >= 0x500)typedef struct tagRASEAPINFO { DWORD dwSizeofEapInfo; BYTE *pbEapInfo;} RASEAPINFO;#endiftypedef struct tagRASDIALEXTENSIONS { DWORD dwSize; DWORD dwfOptions;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -