?? scanupfile.pas
字號:
{##########################################
旁注入侵專用程序 3.0升級版
----------------------------------------
模塊:網(wǎng)頁掃描 - 掃描上傳頁面的線程
描述:該單元是掃描上傳頁面的線程單元
作者:2005.3.14日下午 明小子
##########################################}
unit ScanUpFile;
interface
uses
Classes, SysUtils, CheckLst, ComCtrls, CheckUrlAddr, RzLstBox, Windows;
type
MyScanupf = class(TThread)
private
ThNum: integer;
ThCheBox: TCheckListBox;
ThLstView: TListView;
ThLstBox: TRzListBox;
Url: string;
procedure AddResult;
protected
procedure Execute; override;
public
constructor Create(LstBox: TRzListBox; CheBox: TCheckListBox; LstView: TListView; Num: integer);
end;
implementation
var
CS: TRTLCriticalSection;
constructor MyScanupf.Create(LstBox: TRzListBox; CheBox: TCheckListBox; LstView: TListView; Num: integer);
begin
ThNum := Num;
ThCheBox := CheBox;
ThLstBox := LstBox;
ThLstView := LstView;
InitializeCriticalSection(CS); {初始化}
FreeOnTerminate := True; {刪除}
inherited Create(False); {運行}
end;
procedure MyScanupf.AddResult;
begin
with ThLstView.Items.Add do
begin
Caption := ThLstBox.Items[ThNum];
SubItems.Add('存在 - ' + inttostr(ThLstView.Items.Count));
end;
end;
procedure MyScanupf.Execute;
var
i: integer;
begin
try
Url := ThLstBox.Items[ThNum];
EnterCriticalSection(cs);
for i := 0 to ThCheBox.Items.Count - 1 do
begin
if Terminated then Exit;
if ThCheBox.Checked[i] then
begin
LeaveCriticalSection(CS);
ThLstBox.Items[ThNum] := Url + ThCheBox.Items[i];
if CheckUrl(Url + ThCheBox.Items[i], 1500) then
Synchronize(AddResult);
end;
sleep(30);
end;
DeleteCriticalSection(CS); {刪除臨界區(qū)}
except
end;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -