📄 ras.pas
字号:
(* Flags for RasConnectionNotification().
*)
RASCN_Connection = $00000001;
RASCN_Disconnection = $00000002;
RASCN_BandwidthAdded = $00000004;
RASCN_BandwidthRemoved = $00000008;
(* RASENTRY 'dwDialMode' values.
*)
RASEDM_DialAll = 1;
RASEDM_DialAsNeeded = 2;
(* RASENTRY 'dwIdleDisconnectSeconds' constants.
*)
RASIDS_Disabled = $ffffffff;
RASIDS_UseGlobalValue = 0;
(* AutoDial DLL function parameter block 'dwFlags.'
*)
RASADFLG_PositionDlg = $00000001;
(* RASCREDENTIALS 'dwMask' values.
*)
RASCM_UserName = $00000001;
RASCM_Password = $00000002;
RASCM_Domain = $00000004;
(* AutoDial control parameter values for
** Ras{Get,Set}AutodialParam.
*)
RASADP_DisableConnectionQuery = 0;
RASADP_LoginSessionDisable = 1;
RASADP_SavedAddressesLimit = 2;
RASADP_FailedConnectionTimeout = 3;
RASADP_ConnectionQueryTimeout = 4;
type
HRASCon = THandle;
PHRASCon = ^HRASCon;
(* Identifies an active RAS connection. (See RasEnumConnections)
*)
TRASConnW = record
dwSize : DWORD;
hrasconn : HRasCon;
szEntryName : array [0..RAS_MaxEntryName] of WideChar;
szDeviceType : array [0..RAS_MaxDeviceType] of WideChar;
szDeviceName : array [0..RAS_MaxDeviceName] of WideChar;
szPhonebook : array [0..MAX_PATH - 1] of WideChar;
dwSubEntry : DWORD;
end;
TRasConnA = record
dwSize : DWORD;
hrasconn : HRasCon;
szEntryName : array [0..RAS_MaxEntryName] of char;
szDeviceType : array [0..RAS_MaxDeviceType] of char;
szDeviceName : array [0..RAS_MaxDeviceName] of char;
szPhonebook : array [0..MAX_PATH - 1] of char;
dwSubEntry : DWORD;
end;
TRasConn = TRasConnA;
PRASCONNW = ^TRasConnw;
PRASCONNA = ^TRasConnA;
PRasConn = ^TRasConn;
TRASConnState = Integer;
PRasConnState = ^TRASConnState;
(* Describes the status of a RAS connection. (See RasConnectionStatus)
*)
TRASConnStatusW = record
dwSize : DWORD;
rasconnstate : TRASConnState;
dwError : DWORD;
szDeviceType : array [0..RAS_MaxDeviceType] of WideChar;
szDeviceName : array [0..RAS_MaxDeviceName] of WideChar;
szPhoneNumber : array [0..RAS_MaxPhoneNumber] of WideChar
end;
TRASConnStatusA = record
dwSize : DWORD;
rasconnstate : TRASConnState;
dwError : DWORD;
szDeviceType : array [0..RAS_MaxDeviceType] of char;
szDeviceName : array [0..RAS_MaxDeviceName] of char;
szPhoneNumber : array [0..RAS_MaxPhoneNumber] of char
end;
TRASConnStatus = TRASConnStatusA;
PRASConnStatusW = ^TRASConnStatusW;
PRASConnStatusA = ^TRASConnStatusA;
PRASConnStatus = ^TRASConnStatus;
(* Describes connection establishment parameters. (See RasDial)
*)
TRASDialParamsW = record
dwSize : DWORD;
szEntryName : array [0..RAS_MaxEntryName] of WideChar;
szPhoneNumber : array [0..RAS_MaxPhoneNumber] of WideChar;
szCallbackNumber : array [0..RAS_MaxCallbackNumber] of WideChar;
szUserName : array [0..UNLEN] of WideChar;
szPassword : array [0..PWLEN] of WideChar;
szDomain : array [0..DNLEN] of WideChar;
dwSubEntry : DWORD;
dwCallbackId : DWORD;
end;
TRASDialParamsA = record
dwSize : DWORD;
szEntryName : array [0..RAS_MaxEntryName] of char;
szPhoneNumber : array [0..RAS_MaxPhoneNumber] of char;
szCallbackNumber : array [0..RAS_MaxCallbackNumber] of char;
szUserName : array [0..UNLEN] of char;
szPassword : array [0..PWLEN] of char;
szDomain : array [0..DNLEN] of char;
dwSubEntry : DWORD;
dwCallbackId : DWORD;
end;
TRASDialParams = TRASDialParamsA;
PRASDialParamsW = ^TRASDialParamsW;
PRASDialParamsA = ^TRASDialParamsA;
PRASDialParams = ^TRASDialParams;
(* Describes extended connection establishment options. (See RasDial)
*)
TRASDialExtensions = record
dwSize : DWORD;
dwfOptions : DWORD;
hwndParent : HWND;
reserved : DWORD
end;
PRASDialExtensions = ^TRASDialExtensions;
(* Describes an enumerated RAS phone book entry name. (See RasEntryEnum)
*)
TRASEntryNameW = record
dwSize : DWORD;
szEntryName : array [0..RAS_MaxEntryName] of WideChar
end;
TRASEntryNameA = record
dwSize : DWORD;
szEntryName : array [0..RAS_MaxEntryName] of char
end;
TRASEntryName = TRASEntryNameA;
PRASEntryNameW = ^TRASEntryNameW;
PRASEntryNameA = ^TRASEntryNameA;
PRASEntryName = ^TRASEntryName;
(* Protocol code to projection data structure mapping.
*)
TRASProjection = DWORD;
PRASProjection = ^TRASProjection;
(* Describes the result of a RAS AMB (Authentication Message Block)
** projection. This protocol is used with NT 3.1 and OS/2 1.3 downlevel
** RAS servers.
*)
TRASAMBW = record
dwSize : DWORD;
dwError : DWORD;
szNetBiosError : array [0..NETBIOS_NAME_LEN] of WideChar;
bLana : BYTE
end;
TRASAMBA = record
dwSize : DWORD;
dwError : DWORD;
szNetBiosError : array [0..NETBIOS_NAME_LEN] of char;
bLana : BYTE
end;
TRASAMB = TRASAMBA;
PRASAMBW = ^TRASAMBW;
PRASAMBA = ^TRASAMBA;
PRASAMB = ^TRASAMB;
(* Describes the result of a PPP NBF (NetBEUI) projection.
*)
TRASPPPNBFW = record
dwSize : DWORD;
dwError : DWORD;
dwNetBiosError : DWORD;
szNetBiosError : array [0..NETBIOS_NAME_LEN] of WideChar;
szWorkstationName : array [0..NETBIOS_NAME_LEN] of WideChar;
bLana : byte
end;
TRASPPPNBFA = record
dwSize : DWORD;
dwError : DWORD;
dwNetBiosError : DWORD;
szNetBiosError : array [0..NETBIOS_NAME_LEN] of char;
szWorkstationName : array [0..NETBIOS_NAME_LEN] of char;
bLana : byte
end;
TRASPPPNBF = TRASPPPNBFA;
PRASPPPNBFW = ^TRASPPPNBFW;
PRASPPPNBFA = ^TRASPPPNBFA;
PRASPPPNBF = ^TRASPPPNBF;
(* Describes the results of a PPP IPX (Internetwork Packet Exchange)
** projection.
*)
TRASPPPIPXW = record
dwSize : DWORD;
dwError : DWORD;
szIpxAddress : array [0..RAS_MaxIpxAddress] of WideChar
end;
TRASPPPIPXA = record
dwSize : DWORD;
dwError : DWORD;
szIpxAddress : array [0..RAS_MaxIpxAddress] of char
end;
TRASPPPIPX = TRASPPPIPXA;
PRASPPPIPXW = ^TRASPPPIPXW;
PRASPPPIPXA = ^TRASPPPIPXA;
PRASPPPIPX = ^TRASPPPIPX;
(* Describes the results of a PPP IP (Internet) projection.
*)
TRASPPPIPW = record
dwSize : DWORD;
dwError : DWORD;
szIpAddress : array [0..RAS_MaxIpAddress] of WideChar;
szServerIpAddress : array [0..RAS_MaxIpAddress] of WideChar;
end;
TRASPPPIPA = record
dwSize : DWORD;
dwError : DWORD;
szIpAddress : array [0..RAS_MaxIpAddress] of char;
szServerIpAddress : array [0..RAS_MaxIpAddress] of char;
end;
TRASPPPIP = TRASPPPIPA;
PRASPPPIPW = ^TRASPPPIPW;
PRASPPPIPA = ^TRASPPPIPA;
PRASPPPIP = ^TRASPPPIP;
(* Describes the results of a PPP LCP/multi-link negotiation.
*)
TRASPPPLCP = record
dwSize : DWORD;
fBundled : BOOL;
end;
PRASPPPLCP = ^TRASPPPLCP;
(* Describes the results of a SLIP (Serial Line IP) projection.
*)
TRASSLIPW = record
dwSize : DWORD;
dwError : DWORD;
szIpAddress : array [0..RAS_MaxIpAddress] of WideChar;
end;
TRASSLIPA = record
dwSize : DWORD;
dwError : DWORD;
szIpAddress : array [0..RAS_MaxIpAddress] of char;
end;
TRASSLIP = TRASSLIPA;
PRASSLIPW = ^TRASSLIPW;
PRASSLIPA = ^TRASSLIPA;
PRASSLIP = ^TRASSLIP;
(* Prototypes for caller's RasDial callback handler. Arguments are the
** message ID (currently always WM_RASDIALEVENT), the current RASCONNSTATE and
** the error that has occurred (or 0 if none). Extended arguments are the
** handle of the RAS connection and an extended error code.
**
** For RASDIALFUNC2, subsequent callback notifications for all
** subentries can be cancelled by returning FALSE.
*)
TRasDialFunc = procedure (unMsg : UINT; RASConnState : TRASConnState; dwError : DWORD); stdcall;
TRasDialFunc1 = procedure (HRASConn : HRASCON; unMsg : UINT; rascs : TRASConnState; dwError, dwExtendedError : DWORD); stdcall;
TRasDialFunc2 = function (dwCallbackID, dwSubEntry : DWORD; HRASConn : HRASCON; unMsg : UINT; rascs : TRASConnState; dwError, dwExtendedError : DWORD) : DWORD; stdcall;
(* Information describing a RAS-capable device.
*)
TRASDevInfoW = record
dwSize : DWORD;
szDeviceType : array [0..RAS_MaxDeviceType] of WideChar;
szDeviceName : array [0..RAS_MaxDeviceName] of WideChar
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -