ÈóÌÐòÖ»ÔËÐÐÒ»¸öʵÀý(Delphiƪ)
Windows ÏÂÒ»¸öµäÐ͵ÄÌØÕ÷¾ÍÊǶàÈÎÎñ£¬ÎÒÃÇ¿ÉÒÔͬʱ´ò¿ª¶à¸ö´°¿Ú½øÐвÙ×÷£¬Ò²¿ÉÒÔͬʱÔËÐгÌÐòµÄ¶à¸öʵÀý£¬±ÈÈç¿ÉÒÔ´ò¿ªÐí¶à¸ö×ÊÔ´¹ÜÀíÆ÷½øÐÐÎļþµÄÒƶ¯¸´ÖƲÙ×÷¡£µ«ÓÐʱ³öÓÚijÖÖ¿¼ÂÇ£¨±ÈÈ簲ȫÐÔ£©£¬ÎÒÃÇÒª×ö³öһЩÏÞÖÆ£¬ÈóÌÐòÖ»Äܹ»ÔËÐÐÒ»¸öʵÀý¡£ÔÚDelphi±à³ÌÖУ¬±ÊÕß×ܽá³öÁËÒÔϼ¸ÖÖ·½·¨£º
¡¡¡¡Ò»¡¢ ²éÕÒ´°¿Ú·¨
¡¡¡¡ÕâÊÇ×îΪ¼òµ¥µÄÒ»ÖÖ·½·¨¡£ÔÚ³ÌÐòÔËÐÐÇ°ÓÃFindWindowº¯Êý²éÕÒ¾ßÓÐÏàͬ´°¿ÚÀàÃûºÍ±êÌâµÄ´°¿Ú£¬Èç¹ûÕÒµ½ÁË£¬¾Í˵Ã÷ÒѾ´æÔÚÒ»¸öʵÀý¡£ÔÚÏîÄ¿Ô´ÎļþµÄ³õʼ»¯²¿·ÖÌí¼ÓÒÔÏ´úÂ룺
Program OneApp
¡¡¡¡Uses
¡¡¡¡Forms,Windows;//£¨ÕâÀï½éÉܵļ¸ÖÖ·½·¨¾ùÐèÔÚÏîÄ¿Ô´ÎļþÖÐÌí¼ÓWindowsµ¥Ôª£¬ÒÔºó²»ÔÙÖظ´ÁË£©
¡¡¡¡Var Hwnd:Thandle;
¡¡¡¡Begin
¡¡¡¡ Hwnd:=FindWindow(‘TForm1’£¬‘SingleApp’);
¡¡¡¡ If Hwnd=0 then
¡¡¡¡ Begin
¡¡¡¡ Application.Initialize;
¡¡¡¡ Application.CreateForm(Tform1, Form1);
¡¡¡¡ Application.Run;
¡¡¡¡ End;
¡¡¡¡End;
FindWindow()º¯Êý´øÁ½¸ö²ÎÊý£¬ÆäÖеÄÒ»¸ö²ÎÊý¿ÉÒÔºöÂÔ£¬µ«±ÊÕßÇ¿ÁÒ½¨Ò齫Á½¸ö²ÎÊý¶¼ÓÃÉÏ£¬ÃâµÃ´ÕÇɱðµÄ³ÌÐòÒ²ÔÚʹÓÃÏàͬµÄÀàÃû£¬¾ÍµÃ²»µ½ÕýÈ·µÄ½á¹ûÁË¡£ÁíÍ⣬Èç¹ûÊÇÔÚDelphi IDE´°¿ÚÖÐÔËÐиóÌÐò£¬½«Ò»´Î¶¼²»ÄÜÔËÐУ¬ÒòΪÒѾ´æÔÚÏàͬÀàÃûºÍ±êÌâµÄ´°¿Ú£ºÉè¼ÆʱµÄ´°Ìå¡£
¡¡¡¡¶þ¡¢Ê¹Óû¥³â¶ÔÏó
¡¡¡¡Èç¹û¾õµÃ²éÕÒ´°¿ÚµÄ·½·¨Ð§Âʲ»Ì«¸ßµÄ»°£¬¿ÉÒÔʹÓô´½¨»¥³â¶ÔÏóµÄ·½·¨¡£¾¡¹Ü»¥³â¶ÔÏóͨ³£ÓÃÓÚͬ²½Á¬½Ó£¬µ«ÓÃÔÚÕâ¸öµØ·½Ò²ÊǷdz£·½±ãµÄ¡£½öÓÃÁË4¾ä´úÂë¾ÍÇáËɸ㶨¡£
VAR Mutex:THandle;
¡¡¡¡begin
¡¡¡¡ Mutex:=CreateMutex(NIL,True,‘SingleApp’);
¡¡¡¡ IF GetLastError<>ERROR_ALREADY_EXISTS THEN//Èç¹û²»´æÔÚÁíһʵÀý
¡¡¡¡ BEGIN
¡¡¡¡ Application.CreateHandle;
¡¡¡¡ Application.CreateForm (TExpNoteForm, ExpNoteForm);
¡¡¡¡ Application.Run;
¡¡¡¡ END;
¡¡¡¡ ReleaseMutex(Mutex);
¡¡¡¡end.
Èý¡¢È«¾ÖÔ×Ó·¨
¡¡¡¡ÎÒÃÇÒ²¿ÉÒÔÀûÓÃÏòϵͳÌí¼ÓÈ«¾ÖÔ×ӵķ½·¨£¬À´·ÀÖ¹¶à¸ö³ÌÐòʵÀýµÄÔËÐС£È«¾ÖÔ×ÓÓÉWindows ϵͳ¸ºÔðά³Ö£¬ËüÄܱ£Ö¤ÆäÖеÄÿ¸öÔ×Ó¶¼ÊÇΨһµÄ£¬¹ÜÀíÆäÒýÓüÆÊý£¬²¢ÇÒµ±¸ÃÈ«¾ÖÔ×ÓµÄÒýÓüÆÊýΪ0ʱ£¬´ÓÄÚ´æÖÐÇå³ý¡£ÎÒÃÇÓÃGlobalAddAtom º¯ÊýÏòÈ«¾ÖÔ×ÓÌí¼ÓÒ»¸ö255¸ö×Ö½ÚÒÔÄÚµÄ×Ö·û´®£¬ÓÃGlobalFindAtomÀ´¼ì²éÊÇ·ñÒѾ´æÔÚ¸ÃÈ«¾ÖÔ×Ó£¬×îºóÔÚ³ÌÐò½áÊøʱÓÃGlobalDeleteAtomº¯Êýɾ³ýÌí¼ÓµÄÈ«¾ÖÔ×Ó¡£Ê¾ÀýÈ
Ïà¹ØÎĵµ£º
ÔÚ¿ª½²Ö®Ç°£¬Ê×ÏÈ£¬ÎÒ¼ÙÉèÄãÁ˽âʲôÊÇÃæÏò¶ÔÏó£¬Ê²Ã´ÊÇÀà¡£Èç¹û²»Á˽âµÄ»°£¬½¨ÒéÏÈÈ¥Á˽âÒ»ÏÂÏà¹Ø֪ʶ£¡
ÔÚDelphiÖУ¬×é¼þ£¬ÎÒÃÇ¿ÉÒÔ½«ËüÀí½âΪһ¸ö¸öµÄ·â×°ºÃÁ˵ŦÄܶÔÏó¿â£¬Ê¹ÓÃÕâ¸ö¿â£¬¾ÍÖ»Óüòµ¥µÄ¼¸¾ä´úÂ룬ÉõÖÁ½ö½ö¼òµ¥µÄÉèÖü¸¸öÊôÐÔ¾ÍÄÜʵÏÖijЩ
¹¦ÄÜ£¬ÎÒÃÇ¿ÉÒÔ½«×é¼þÏëÏó³ÉÈÕ³£Éú»îÖÐʹÓõÄijЩ ......
ÔÚDelphi×Ô´øµÄIndy¿Ø¼þÖÐÆäʵÊÇÌṩÁËMD2,MD4,MD5¶ÔÏóµÄ£¬ÎÒÃÇ¿ÉÒÔÖ±½ÓʹÓÃËüÃÇÀ´Íê³ÉMD5µÄÇ©ÃûËã·¨¡£¶ø²»ÐèÒªÔÙÈ¥ÕÒÆäËüµÄ
DLL»òÊÇPasÁË¡£
ÔÚUsesµ¥ÔªÖÐÒýÓà IdHashMessageDigest,IdGlobal, IdHash µ¥Ôª£¬ÔÙдÈçÏ´úÂë¼´¿ÉÒÔ´ïµ½MD5µÄʵÏÖ¡£
ʾÀý´úÂë
procedure TForm1.Button1Click(Sen ......
Delphi ÖÐ FindWindow ºÍ FindWindowEx µÄÓï·¨ºÍÓ÷¨
FindWindow(
lpClassName, {´°¿ÚµÄÀàÃû}
lpWindowName: PChar {´°¿ÚµÄ±êÌâ}
): HWND; {·µ»Ø´°¿ÚµÄ¾ä±ú; ʧ°Ü·µ»Ø 0}
//FindWin ......
×î½üÃæÊÔÁËÒ»¼ÒÆóÒµ,ÏÂÃæÓÐÒ»µÀ´ÓÀ´Ã»ÓÐÏë¹ýµÄÎÊÌâ,µ±Ê±ÓÐ˼·,²»¹ýд²»³öÀ´.»ØÀ´ºó,µ÷ÊÔÁËÒ»ÏÂ,·¢ÏÖ»¹ÊÇÓÐÄѶȵÄ,дÉÏÀ´¿´´ó¼ÒÊÇ·ñ»¹ÓиüÓÅ»¯µÄд·¨,»¶ÓÌÖÂÛ:
ÏÂÃæʵÏÖ½«×Ö·û´®"10ad200d3" ÖеÄÊý×ֺϼÆ,10+200+3=213
var s1:string;
var i:integer;
var n1:integer;
var tem1: string;
var tem2:integer;
......
Ã÷Ìì¾ÍÊÇÎåÒ»½ÚÁË£¬ÐÁ¿àÁ˺ü¸¸öÔ£¬½è´Ë»ú»áÓ¦¸Ã¾¡Çé·ÅËÉÒ»·¬¡£¿ÉÊÇÏëµ½BlogºÃ¾ÃûÓÐдÎÄÕ£¬ËƺõȱЩʲôËƵġ£Õ⼸¸öÔÂÀ´ÔÚÏîÄ¿ÖÐÓÖÔö³¤ÁËÐí¶à¾Ñ飬ѧµ½Ðí¶àʵ¼ÊÓ¦ÓõÄ֪ʶ¡£²»Èç°ÑһЩ±È½ÏÓÐÓõļǼÏÂÀ´£¬¹©ÅóÓÑÃDzο¼¿ÉºÃ¡£
ÎÒÏëµ½DelphiµÄʼþ£¬ÄÇ¿ÉÕæÊǸö·½±ãµÄ¶«Î÷£¬³õѧÕßÔÚ´°ÌåÉÏÀ¼¸¸ö¿ ......