DELPHI ÖÐÈçºÎÌáÉý½ø³ÌÁîÅÆ
ת:DELPHI ÖÐÈçºÎÌáÉý½ø³ÌÁîÅÆ
½üÒ»¶Îʱ¼äÔÚÓÃDELPHIд¸ö³ÌÐò,µ±ÎÒдµ½Ò»¸ö½áÊøÆäËû½ø³ÌµÄÄ£¿éµÄʱºòÓÐʱ²»³É¹¦,ÄÇÊÇÒòΪÆäËû½ø³Ì,È粡¶¾½ø³ÌµÄȨÏÞ¸ß,ͨ¹ý³£¹æµÄ½áÊø½ø³ÌµÄº¯ÊýÐв»Í¨,ÒªÊ×ÏÈÌá¸ß×ÔÉí³ÌÐòµÄȨÏÞ,ÔÙ½áÊøÆäËû½ø³Ì
ÔÚÍøÉÏÒ²¿´µ½ÁËһЩÌáÉý½ø³ÌÁîÅÆµÄº¯Êýµ«¶¼²»ÔõôºÃÓÃ,×îºóÎÒ»¹ÊÇ´ÓÒ»¸öºÚ¿ÍºóÃųÌÐòµÄÔ´´úÂëÖÐÌáÈ¡³öÁËÒ»¸öºÃµÄÌáÉý½ø³ÌÁîÅÆµÄº¯Êý,²»¸Ò¶ÀÏí,¸ú´ó¼Ò·ÖÏíÏÂ
Í·²¿Çë¼ÓÈë:Tlhelp32
//ÌáÉý½ø³ÌȨÏÞΪDEBUGȨÏÞ
procedure SetPrivilege;
var
OldTokenPrivileges, TokenPrivileges: TTokenPrivileges;
ReturnLength: dword;
hToken: THandle;
Luid: int64;
begin
OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES, hToken);
LookupPrivilegeValue(nil, 'SeDebugPrivilege', Luid);
TokenPrivileges.Privileges[0].luid := Luid;
TokenPrivileges.PrivilegeCount := 1;
TokenPrivileges.Privileges[0].Attributes := 0;
AdjustTokenPrivileges(hToken, False, TokenPrivileges, SizeOf(TTokenPrivileges), OldTokenPrivileges, ReturnLength);
OldTokenPrivileges.Privileges[0].luid := Luid;
OldTokenPrivileges.PrivilegeCount := 1;
OldTokenPrivileges.Privileges[0].Attributes := TokenPrivileges.Privileges[0].Attributes or SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(hToken, False, OldTokenPrivileges, ReturnLength, PTokenPrivileges(nil)^, ReturnLength);
end;
Ó÷¨¾Í²»ÓÃ˵Á˰É,
procedure TForm1.FormCreate(Sender: TObject);
begin
SetPrivilege;
...
Ò»¾ä»°¾Í°Ñ³ÌÐòÌáÉýΪDEBUGȨÏÞÁË,È»ºó¾Í¿ÉÒÔËæ±ã½áÊøÆäËû½ø³ÌÁË
ÕâÀïÒ²¸½´øÌù³öÒ»¸ö½áÊø½ø³ÌµÄº¯Êý¹©´ó¼Ò²Î¿¼:
function KillTask(ExeFileName: string): integer;
const
PROCESS_TERMINATE=$0001;
var
ContinueLoop: BOOL;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32;
begin
result := 0;
FSnapshotHandle := CreateToolhelp32Snapshot
(TH32CS_SNAPPROCESS, 0);
FProcessEntry32.dwSize := Sizeof(FProcessEntry32);
ContinueLoop := Process32First(FSnapshotHandle,
FProcessEntry32);
while integer(ContinueLoop) <> 0 do
begin
if ((
Ïà¹ØÎĵµ£º
Delphi±àдϵͳ·þÎñÆß£ºÍê³É¶Ë¿ÚÑÝʾ ÊÕ²Ø
ÔÚ¿ª·¢´óÁ¿Socket²¢·¢·þÎñÆ÷£¬Íê³É¶Ë¿Ú¼ÓÖØµþI/OÊÇÆù½ñΪֹ×îºÃµÄÒ»ÖÖ½â¾ö·½°¸£¬ÏÂÃæÊǼòµ¥µÄ½éÉÜ£º
“Íê³É¶Ë¿Ú”Ä£ÐÍÊÇÆù½ñΪֹ×îΪ¸´ÔÓµÄÒ»ÖÖI/OÄ£ÐÍ£¬ÌرðÊʺÏÐèҪͬʱ¹ÜÀíΪÊýÖÚ¶àµÄÌ×½Ó×Ö£¬²ÉÓÃÕâÖÖÄ£ÐÍ£¬ÍùÍù¿ÉÒÔ´ïµ½×î¼ÑµÄϵͳÐÔÄÜ¡£µ«ÊÇÖ ......
DelphiÓÃWebBrowser±à³Ì-×Ô¶¯µÇ¼²Ù×÷
2009Äê08ÔÂ18ÈÕ ÐÇÆÚ¶þ 00:39
ÀûÓÃDelphiµÄOlevariantÀàÐÍ
--------------------------------------------------------------------------------
µ¥¸öframesµÄÊäÈë
var
o : Olevariant;
begin
o := WebBrowser.OleObject.document.all.item('LoginUserID',0); &nbs ......
procedure TForm1.Button2Click(Sender: TObject);
var
o : Olevariant;
begin
webbrowser1.Navigate('http://www.163.com');
delay(2000);
o := WebBrowser1.OleObject.document.all.item('username',0);
o.value := 'username';
o := W ......
procedure Delay(msecs:integer);
var
Tick: DWord;
Event: THandle;
begin
Event := CreateEvent(nil, False, False, nil);
try
Tick := GetTickCount + DWord(msecs);
while (msecs > 0) and (MsgWaitForMultipleObjects(1, Event, False, msecs, QS_ALLINPUT) <&g ......