📄 ras.pas
字号:
TRASDevInfoA = record
dwSize : DWORD;
szDeviceType : array [0..RAS_MaxDeviceType] of char;
szDeviceName : array [0..RAS_MaxDeviceName] of char
end;
TRASDevInfo = TRASDevInfoA;
PRASDevInfoW = ^TRASDevInfoW;
PRASDevInfoA = ^TRASDevInfoA;
PRASDevInfo = ^TRASDevInfo;
(* RAS country information (currently retrieved from TAPI).
*)
TRASCtryInfo = record
dwSize : DWORD;
dwCountryID : DWORD;
dwNextCountryID : DWORD;
dwCountryCode : DWORD;
dwCountryNameOffset : DWORD
end;
(* There is currently no difference between
** RASCTRYINFOA and RASCTRYINFOW. This may
** change in the future.
*)
TRASCtryInfoW = TRASCtryInfo;
TRASCtryInfoA = TRASCtryInfo;
PRASCtryInfoW = ^TRASCtryInfoW;
PRASCtryInfoA = ^TRASCtryInfoA;
PRASCtryInfo = ^TRASCtryInfo;
(* A RAS IP address.
*)
TRASIPAddr = record
a : BYTE;
b : BYTE;
c : BYTE;
d : BYTE
end;
const
ET_40Bit = 1;
ET_128Bit = 2;
ET_None = 0; // No encryption
ET_Require = 1; // Require Encryption
ET_RequireMax = 2; // Require max encryption
ET_Optional = 3; // Do encryption if possible. None Ok.
VS_Default = 0; // default (PPTP for now)
VS_PptpOnly = 1; // Only PPTP is attempted.
VS_PptpFirst = 2; // PPTP is tried first.
VS_L2tpOnly = 3; // Only L2TP is attempted.
VS_L2tpFirst = 4; // L2TP is tried first.
type
(* A RAS phone book entry.
*)
TRASEntryA = record
dwSize : DWORD;
dwfOptions : DWORD;
//
// Location/phone number.
//
dwCountryID : DWORD;
dwCountryCode : DWORD;
szAreaCode : array [0..RAS_MaxAreaCode] of char;
szLocalPhoneNumber : array [0..RAS_MaxPhoneNumber] of char;
dwAlternateOffset : DWORD;
//
// PPP/Ip
//
ipaddr : TRASIPAddr;
ipaddrDns : TRASIPAddr;
ipaddrDnsAlt : TRASIPAddr;
ipaddrWins : TRASIPAddr;
ipaddrWinsAlt : TRASIPAddr;
//
// Framing
//
dwFrameSize : DWORD;
dwfNetProtocols : DWORD;
dwFramingProtocol : DWORD;
//
// Scripting
//
szScript : array [0..MAX_PATH-1] of char;
//
// AutoDial
//
szAutodialDll : array [0..MAX_PATH-1] of char;
szAutodialFunc : array [0.. MAX_PATH-1] of char;
//
// Device
//
szDeviceType : array [0..RAS_MaxDeviceType] of char;
szDeviceName : array [0..RAS_MaxDeviceName] of char;
//
// X.25
//
szX25PadType : array [0..RAS_MaxPadType] of char;
szX25Address : array [0..RAS_MaxX25Address] of char;
szX25Facilities : array [0..RAS_MaxFacilities] of char;
szX25UserData : array [0..RAS_MaxUserData] of char;
dwChannels : DWORD;
//
// Reserved
//
dwReserved1 : DWORD;
dwReserved2 : DWORD;
//
// Multilink
//
dwSubEntries : DWORD;
dwDialMode : DWORD;
dwDialExtraPercent : DWORD;
dwDialExtraSampleSeconds : DWORD;
dwHangUpExtraPercent : DWORD;
dwHangUpExtraSampleSeconds : DWORD;
//
// Idle timeout
//
dwIdleDisconnectSeconds : DWORD;
end;
TRASEntryW = record
dwSize : DWORD;
dwfOptions : DWORD;
//
// Location/phone number.
//
dwCountryID : DWORD;
dwCountryCode : DWORD;
szAreaCode : array [0..RAS_MaxAreaCode] of WideChar;
szLocalPhoneNumber : array [0..RAS_MaxPhoneNumber] of WideChar;
dwAlternateOffset : DWORD;
//
// PPP/Ip
//
ipaddr : TRASIPAddr;
ipaddrDns : TRASIPAddr;
ipaddrDnsAlt : TRASIPAddr;
ipaddrWins : TRASIPAddr;
ipaddrWinsAlt : TRASIPAddr;
//
// Framing
//
dwFrameSize : DWORD;
dwfNetProtocols : DWORD;
dwFramingProtocol : DWORD;
//
// Scripting
//
szScript : array [0..MAX_PATH-1] of WideChar;
//
// AutoDial
//
szAutodialDll : array [0..MAX_PATH-1] of WideChar;
szAutodialFunc : array [0.. MAX_PATH-1] of WideChar;
//
// Device
//
szDeviceType : array [0..RAS_MaxDeviceType] of WideChar;
szDeviceName : array [0..RAS_MaxDeviceName] of WideChar;
//
// X.25
//
szX25PadType : array [0..RAS_MaxPadType] of WideChar;
szX25Address : array [0..RAS_MaxX25Address] of WideChar;
szX25Facilities : array [0..RAS_MaxFacilities] of WideChar;
szX25UserData : array [0..RAS_MaxUserData] of WideChar;
dwChannels : DWORD;
//
// Reserved
//
dwReserved1 : DWORD;
dwReserved2 : DWORD;
//
// Multilink
//
dwSubEntries : DWORD;
dwDialMode : DWORD;
dwDialExtraPercent : DWORD;
dwDialExtraSampleSeconds : DWORD;
dwHangUpExtraPercent : DWORD;
dwHangUpExtraSampleSeconds : DWORD;
//
// Idle timeout
//
dwIdleDisconnectSeconds : DWORD;
end;
TRASEntry = TRASEntryA;
PRASEntryW = ^TRASEntryW;
PRASEntryA = ^TRASEntryA;
PRASEntry = ^TRASEntry;
(* Old AutoDial DLL function prototype.
**
** This prototype is documented for backward-compatibility
** purposes only. It is superceded by the RASADFUNCA
** and RASADFUNCW definitions below. DO NOT USE THIS
** PROTOTYPE IN NEW CODE. SUPPORT FOR IT MAY BE REMOVED
** IN FUTURE VERSIONS OF RAS.
*)
ORASADFUNC = function (hwndOwner : HWND; lpszEntry : PChar; dwFlags : DWORD; var dwRetCode : DWORD) : BOOL; stdcall;
(* AutoDial DLL function parameter block.
*)
TRASADParams = record
dwSize : DWORD;
hwndOwner : HWND;
dwFlags : DWORD;
xDlg : LongInt;
yDlg : LongInt
end;
PRASADParams = ^TRASADParams;
(* Prototype AutoDial DLL function.
*)
RASADFuncA = function (lpszPhoneBook, lpszEntry : PCHAR; const AutoDialParams : TRASADParams; var dwRetCode : PDWORD) : BOOL; stdcall;
RASADFuncW = function (lpszPhoneBook, lpszEntry : PWideChar; const AutoDialParams : TRASADParams; var dwRetCode : PDWORD) : BOOL; stdcall;
RASADFunc = RASADFuncA;
(* A RAS phone book multilinked sub-entry.
*)
TRASSubEntryA = record
dwSize : DWORD;
dwfFlags : DWORD;
//
// Device
//
szDeviceType : array [0..RAS_MaxDeviceType] of char;
szDeviceName : array [0..RAS_MaxDeviceName] of char;
//
// Phone numbers
//
szLocalPhoneNumber : array [0..RAS_MaxPhoneNumber] of char;
dwAlternateOffset : DWORD
end;
TRASSubEntryW = record
dwSize : DWORD;
dwfFlags : DWORD;
//
// Device
//
szDeviceType : array [0..RAS_MaxDeviceType] of WideChar;
szDeviceName : array [0..RAS_MaxDeviceName] of WideChar;
//
// Phone numbers
//
szLocalPhoneNumber : array [0..RAS_MaxPhoneNumber] of WideChar;
dwAlternateOffset : DWORD
end;
TRASSubEntry = TRASSubEntryA;
PRASSubEntryW = ^TRASSubEntryW;
PRASSubEntryA = ^TRASSubEntryA;
PRASSubEntry = ^TRASSubEntry;
(* Ras{Get,Set}Credentials structure. These calls
** supercede Ras{Get,Set}EntryDialParams.
*)
TRASCredentialsA = record
dwSize :DWORD;
dwMask : DWORD;
szUserName : array [0..UNLEN] of char;
szPassword : array [0..PWLEN] of char;
szDomain : array [0..DNLEN] of char
end;
TRASCredentialsW = record
dwSize :DWORD;
dwMask : DWORD;
szUserName : array [0..UNLEN] of WideChar;
szPassword : array [0..PWLEN] of WideChar;
szDomain : array [0..DNLEN] of WideChar
end;
TRASCredentials = TRASCredentialsA;
PRASCredentialsW = ^TRASCredentialsW;
PRASCredentialsA = ^TRASCredentialsA;
PRASCredentials = ^TRASCredentials;
(* AutoDial address properties.
*)
TRASAutoDialEntryA = record
dwSize : DWORD;
dwFlags : DWORD;
dwDialingLocation : DWORD;
szEntry : array [0..RAS_MaxEntryName] of char;
end;
TRASAutoDialEntryW = record
dwSize : DWORD;
dwFlags : DWORD;
dwDialingLocation : DWORD;
szEntry : array [0..RAS_MaxEntryName] of WideChar;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -