ÔÚDelphiÖÐʹÓÃRASʵÏÖ¶Ôϵͳ²¦ºÅµÄ¿ØÖÆ
ÔÚDelphiÖÐʹÓÃRASʵÏÖ¶Ôϵͳ²¦ºÅµÄ¿ØÖÆ
ÔÚÆóÒµÓ¦ÓÃÖÐÓÐʱºòÏ£ÍûÄÜÔÚ³ÌÐòÖÐʵÏÖ¶Ô²¦ºÅÍøÂçµÄ¿ØÖÆ£¬ÒÔʵÏÖ×Ô¶¯²¦ºÅ¡¢×Ô¶¯¶Ï¿ªÍøÂç¡£ÔÚ³¢ÊÔÁ˶àÖÖ·½Ê½Ö®ºó£¬ÈÏΪRASÊÇÒ»ÖֱȽÏÎȶ¨µÄ·½Ê½¡£ÔÚgoogleÁËÍøÉÏһЩ×ÊÁϺó£¬ÏÖÕûÀíÈçÏ£º
Ò»¡¢Ê×ÏÈÐèÒªÓиöÕë¶ÔRASµÄÍ·Îļþ¶¨Ò壬Ras.pas´úÂëÈçÏÂ
{* Copyright (c) 1992-1995, Microsoft Corporation, all rights reserved
**
** ras.h
** Remote Access external API
** Public header for external API clients
*}
{ Delphi conversion by Davide Moretti <dmoretti@iper.net> }
{ Note: All functions and structures defaults to Ansi. If you want to use
Unicode structs and funcs, use the names ending with 'W' }
unit Ras;
interface
uses Windows, Messages;
const
{ These are from lmcons.h }
DNLEN = 15; // Maximum domain name length
UNLEN = 256; // Maximum user name length
PWLEN = 256; // Maximum password length
NETBIOS_NAME_LEN = 16; // NetBIOS net name (bytes)
RAS_MaxDeviceType = 16;
RAS_MaxPhoneNumber = 128;
RAS_MaxIpAddress = 15;
RAS_MaxIpxAddress = 21;
{ Note: you must define WINVER31 before compiling this unit to get the sizes
for the 3.x version of RAS. The default is for Windows 95 and NT 4.0 }
{$IFDEF WINVER31}
{Version 3.x sizes }
RAS_MaxEntryName = 20;
RAS_MaxDeviceName = 32;
RAS_MaxCallbackNumber = 48;
{$ELSE}
{Version 4.x sizes }
RAS_MaxEntryName = 256;
RAS_MaxDeviceName = 128;
RAS_MaxCallbackNumber = RAS_MaxPhoneNumber;
{$ENDIF}
type
LPHRasConn = ^THRasConn;
THRasConn = Longint;
{* Identifies an active RAS connection. (See RasEnumConnections)
*}
LPRasConnW = ^TRasConnW;
TRasConnW = record
dwSize: Longint;
hrasconn: THRasConn;
szEntryName: Array[0..RAS_MaxEntryName] of WideChar;
{$IFNDEF WINVER31}
szDeviceType: Array[0..RAS_MaxDeviceType] of WideChar;
szDeviceName: Array[0..RAS_MaxDeviceName] of WideChar;
{$ENDIF}
end;
LPRasConnA = ^TRasConnA;
TRasConnA = record
dwSize: Longint;
Ïà¹ØÎĵµ£º
ÍÆ¼ö¸ø´ó¼Ò[url=DELPHIÉî¶È̽Ë÷ £¨µÚ2°æ£©PDFµç×ÓÊé][/url]
ÒòΪÐèҪǰ¼¸ÌìÔÚÍøÉÏËÑËѹýÕâ±¾ÊéÊ飬¿ÉûÓУ¬Ô´Âëµ¹ÊÇÓУ¬½ñÌì´ò¿ª¾³£È¥µÄÍøÕ¾£¬¾ÓÈ»·¢ÏÖÌṩÏÂÔØÁË£¬Õâ¸öÍøÕ¾×Ô¼º²î²»¶àÿÌì¶¼Òª´ò¿ª¿´¿´£¬Õ⼸ÌìæºýÍ¿ÁË£¬¾ÓȻûÓп´µ½£¬ÔÚÕâÍÆ¼ö¸ø´ó¼Ò£¬ÄÜÏÂÔØµÄ£¬ËٶȺܿ졣
[url=http://www.delphifans.com/Soft ......
ÊÊÅäÆ÷ģʽµÄÖ÷ÒªÒâͼÊǶÔÏÖÓÐÀàµÄ½Ó¿Ú½øÐÐת»»£¬ÒÔÂú×ãÄ¿±êÀàµÄÐèÇ󡣯ä´Î£¬¿ÉÒÔ¸øÄ¿±êÀàµÄ½Ó¿ÚÌí¼ÓеÄÐÐΪ£¨Ö÷ÒªÖ¸·½·¨£©¡£ÕâÒ»µãÈÝÒ×Óë×°ÊÎģʽ»ìÏý¡£´ÓÒâͼ·½ÃæÀ´¿´£¬×°ÊÎģʽ²»¸Ä±ä£¨Í¨³£Ö¸Ôö¼Ó£©½Ó¿ÚÖеÄÐÐΪ£¨Ö÷ÒªÖ¸·½·¨£©£¬¶øÊÇÔÚÔÓÐÐÐΪ£¨Ö÷ÒªÖ¸·½·¨£©µÄ»ù´¡ÉÏÌí¼ÓÐµĹ¦ÄÜ£»´ÓÀà½á¹¹· ......
1.±»×°ÊÎÕß
{¡¶HeadFirstÉè¼ÆÄ£Ê½¡·Ö®×°ÊÎģʽ }
{ ±¾µ¥ÔªÖеÄÀàΪ±»×°ÊÎÕß }
{ ±àÒ빤¾ß: Delphi7.0 }
{ E-Mail : xshlife@163.com }
unit uComponent;
interface
type
TBeverage = class(TObject) //³éÏóÒûÁÏÀà
protected
FDescription: String;
public
......
ÔÚÖ÷½çÃæµÄimplementation {$R *.dfm} Ï·ÅÈëÒÔÏ´úÂ룺
procedure PatchInt3;
var
NOP: Byte;
NTDLL: THandle;
BytesWritten: DWORD;
Address: Pointer;
begin
if Win32Platform <> VER_PLATFORM_WIN32_NT then
Exit;
NTDLL := GetModuleHandle('NTDLL.DLL');
if NT ......