ÈóÌÐòÖ»ÔËÐÐÒ»¸öʵÀý(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º¯Êýɾ³ýÌí¼ÓµÄÈ«¾ÖÔ×Ó¡£Ê¾ÀýÈ
Ïà¹ØÎĵµ£º
×î½üÔÚµ÷ÊÔ´úÂë,·¢ÏÖÒ»¸öÎÊÌâ.Ó¦¸ÃËãÊÇbug°É. ºÇ,Èç¹û²»Ëãbug,ÄǾÍÊÇÎÒ¶ÔÆäʵÏÖÔÀíµÄÎó½â.
Èç¹û°Ñ·µ»Ø²ÎÊýResult×÷ΪÁíÒ»º¯ÊýµÄÊäÈë²ÎÊý,resultµÄ³õÖµÊDz»È·¶¨...
function fun(str:string):string;
begin
fun2(result);
end; ......
Óйؿª·¢Ï°¹ßµÄһЩÏë·¨£¬ÈçöáÔÚºí£¬²»Í²»¿ì¡£¾¿Æä·¢Ìù¶¯»ú£¬µ±È»²»ÅųýÓÐÆÈ¡²ÎÓë·ÖµÄ¿ÉÄÜ£¬µ«ÁíÒ»·½Ã棬ҲϣÍûÄܸøͬÐУ¨ÄîXing£©ÕßÌṩһЩ
½¨Ò飬»òÕ߲ο¼(Ï£Íû²»ÊÇÎóÈË×ÓµÜ)¡£Í¬Ê±£¬Ò²Ï£Íû¸÷λÄܹ»¾ÍÎÒµÄÕâЩªϰ£¬·¢±íÒ»µã¿´·¨£¬¸ø³öÅúÆÀºÍÖ¸ÕýµÄÒâ¼û¡£Ð»Ð»¡£
Ò»£®½¨Á¢¹¤³ÌĿ¼
&n ......
¾àÀëÉÏһƪϵÁеÄÎÄÕÂÓÐÒ»¶Îʱ¼äÁË£¬¼ÙÖÕÓÚÊÇ·ÅÍêÁË£¡ÏÖÔÚÔÛ¼ÌÐøÔÚTEditÉÏ×öÎÄÕ£¬Í¬Ê±À´ÊìϤijЩWindowsµÄϵͳÏûÏ¢¡£ÏÖÔÚÎÒ½²µÄÊÇÈçºÎʵÏÖÒ»¸öÀàËÆQQ±à¼¿òµÄÑùʽ¡£
ÔÙ½²½â֮ǰ£¬ÏÈ»ØÀ¡Ç°¼¸ÆªÎÄÕÂÓÐЩÈËÌá³öµÄÎÊÌ⡣ͨ¹ýÇ°¼¸ÆªÎÄÕ£¬ÓкܶàÈ˹Ø×¢£¬Í¬Ê±Ò²ÓÐÈ˸øÁËһЩ½¨Òé¡£ËùÒÔÎÒÕâÀï˵Ã÷һϣ¬ÎÒÕâ¸ö×é¼ ......
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;
......