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±àдϵͳ·þÎñÒ»£ºÈçºÎ±àдһ¸öϵͳ·þÎñ ÊÕ²Ø
´ò¿ªDelphi±à¼Æ÷£¬Ñ¡Ôñ²Ëµ¥ÖеÄFile|New|Other...£¬ÔÚNew ItemÖÐÑ¡ÔñService ApplicationÏDelphi±ã×Ô¶¯ÎªÄ㽨Á¢Ò»¸ö»ùÓÚTServiceApplicationµÄй¤³Ì£¬TserviceApplicationÊÇÒ»¸ö·â×°NT·þÎñ³ÌÐòµÄÀ࣬Ëü°üº¬Ò»¸öTService1¶ÔÏóÒÔ¼°·þÎñ³ÌÐòµÄװж¡¢×¢²á¡¢È¡Ïû· ......
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 ......
ÓÉÓÚÐèÒªÔÚ´°ÌåÖÐÉ趨һ¸öÈÕÆÚʱ¼ä£¬³öȥͨÓÃÐÍ¿¼ÂÇ£¬²ÉÓÃÁËTDateTimePicker¿Ø¼þ¡£
ÒòΪÕâ¸ö¿Ø¼þµÄĬÈÏ״ֻ̬ÄÜÏÔʾÈÕÆÚ£¬Ôì³ÉʹÓÃÉϵIJ»±ã£¬ËùÒÔÐèÒª×öÈçϵÄÉ趨£º
ÔڿؼþµÄformatÊôÐÔÀ¸ÀïÉèÖÃÈçÏÂÖµ£ºyyyy-mm-dd hh:mm:ss£»
É趨Íê³ÉºóµÄʱ¼äΪµ±Ç°µÄϵͳʱ¼ä£¬²»ÄÜͨ¹ýµ¯³öÈÕÀúÉ趨£¬Ö»ÄÜÔÚÎı¾¿òÖÐÉ趨¡£ ......
ÎÒһֱʹÓÃDelphi6¿ª·¢Èí¼þ£¬¿´µ½CSDNÉϵÄOPhoneÊÖ»ú¿ª·¢£¬ÓÖÈ¥GoogleÒ»·¬£¬Ìý˵±àдÊÖ»úÈí¼þ
ÄÜ׬Ǯ£¬ËùÒÔҪѧϰJava ME£¬¶ÁÁ˼¸Ì첩ÎÄ£¬´ó¶àÊý¸ÅÄî¸ãÇå³þÁË¡£
ҪѧJavaME¾ÍµÃÏÈѧJavaSE£¬ËùÒÔ×°Á˺ܶàÈí¼þ(²»×°ÄÇô¶à£¬OPhone¾Í×°²»ÉÏÈ¥)¡£
ÍÆ¼öһƪÓÅÐãµÄÎÄÕ£º
ÔÚ NetBeans IDE ÖÐÉè¼Æ Swing GUI
¶ÁÍêÕâÆªÎÄÕ£¬³õ ......
ÈçºÎÔÚDelphiÀïÃæÀûÓÃWordµÄVBA´úÂë½øÐÐһЩ×ܽᡣ
1¡¢ Éú³ÉVBA´úÂë¡£Word±¾Éí¾ßÓкÜÇ¿µÄ¿ÉÀ©Õ¹ÐÔ£¬ÓÈÆäÊÇÖ§³ÖÓû§×Ô¶¨Ò幦ÄÜ£¬ÆäʵÏÖ
µÄÖ÷Òª·½Ê½¾ÍÊÇͨ¹ýVBA´úÂëÀ´ÊµÏֵġ£ÔÚ“¹¤¾ß->ºê->Visual Basic±à¼Æ÷”ÀïÃæ¾Í¿ÉÒÔ¿´
µ½¾ßÌåµÄºê´úÂ룬¿ÉÒÔÖ±½Ó½øÐб༡£¶øÇÒ»¹¿ÉÒÔʹÓÃÂ¼ÖÆºêµÄ¹¦ÄÜ×Ô¶¯ ......