• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            開源之路

            憶往昔, 項羽不過江. 江東好風(fēng)光! 今振臂一呼,率甲三千, 試問天!
            posts - 86, comments - 55, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            如何做到只允許一個實例運行?

            Posted on 2007-12-25 15:06 江邊之鳥 閱讀(1001) 評論(0)  編輯 收藏 引用 所屬分類: c++

            在《C++Builder深度歷險》這本書中有很詳細的說明  
               
              以下工程.H文件:可以實現(xiàn)已運行的程序在最小化時再運行第二個時還原第一個程序。。。。。  
              #include   <vcl.h>  
              #pragma   hdrstop  
              //---------------------------------------------------------------------------  
              USEFORM("Unit1.cpp",   Form1);  
              //---------------------------------------------------------------------------  
              WINAPI   WinMain(HINSTANCE,   HINSTANCE,   LPSTR,   int)  
              {  
                  HWND   AppWnd=FindWindow("TApplication","Shally   Title");  
                  if(AppWnd)  
                  {  
                      if(IsIconic(AppWnd))  
                      {  
                          ShowWindow(AppWnd,SW_RESTORE);  
                      }  
                      else  
                      {  
                          SetForegroundWindow(AppWnd);  
                      }      
                      return   0;  
                  }  
               
                              try  
                              {  
                                                Application->Initialize();  
                                                Application->Title="Shally   Title";  
                                                Application->CreateForm(__classid(TForm1),   &Form1);  
                                                Application->Run();  
                              }  
                              catch   (Exception   &exception)  
                              {  
                                                Application->ShowException(&exception);  
                              }  
                              catch   (...)  
                              {  
                                                try  
                                                {  
                                                                throw   Exception("");  
                                                }  
                                                catch   (Exception   &exception)  
                                                {  
                                                                Application->ShowException(&exception);  
                                                }  
                              }  
                              return   0;  
              }  
              //---------------------------------------------------------------------------Top

            4 樓binbin(破壞分子)回復(fù)于 2002-12-27 22:21:40 得分 0

            findwindow  
              互斥量  
              注冊熱鍵  
              ...Top

            5 樓HUANG_JH(保衛(wèi)釣魚島)回復(fù)于 2002-12-27 22:27:59 得分 10

            WINAPI   WinMain(HINSTANCE,   HINSTANCE,   LPSTR,   int)  
              {  
                      HANDLE     hMutexHandle   =   CreateMutex(NULL,true,"Application   Already   Run!");  
               
                      if   (GetLastError()!=ERROR_ALREADY_EXISTS)  
                      {  
                              try  
                              {  
               
               
                                      Application->Initialize();  
                                      .......  
                                      Application->Run();  
               
                              }  
                              catch   (Exception   &exception)  
                              {  
                                      Application->ShowException(&exception);  
                              }  
                      }  
                      else  
                      {  
                              Application->MessageBox("Application   Already   Run!","Warnning",   MB_OK|MB_ICONWARNING);  
                      }  
                      ReleaseMutex(hMutexHandle);  
                      CloseHandle(hMutexHandle);  
                      return   0;  
               
              }  
              Top

            6 樓penu(懶貓·子在川上之再上征程·殺人無心之寓怒于靜)回復(fù)于 2003-01-07 11:35:39 得分 0

            有個最簡單的方法:  
              在CB6的Examples中有個控件:在\Controls\SingleInst目錄下。  
              打開包編譯并安裝,在組件面板中會增加一個控件SingleInst,把它拉到你的Form中,設(shè)為有效就行了。
            亚洲午夜精品久久久久久app| 少妇久久久久久被弄高潮| 色综合久久88色综合天天| 久久99毛片免费观看不卡| 国产Av激情久久无码天堂| 久久国产精品久久| 国产伊人久久| 亚洲乱码中文字幕久久孕妇黑人| 久久亚洲AV成人出白浆无码国产| 亚洲∧v久久久无码精品| 亚洲国产精品久久66| 亚洲精品乱码久久久久久蜜桃| 久久精品亚洲AV久久久无码| 奇米影视7777久久精品| 久久人人爽人人爽AV片| 久久婷婷五月综合色奶水99啪| 国产精自产拍久久久久久蜜| 亚洲午夜久久久久久久久久| 久久线看观看精品香蕉国产| 伊人情人综合成人久久网小说| 精品熟女少妇av免费久久| 久久久久亚洲精品男人的天堂| 国内精品久久久久久99蜜桃| 久久久这里只有精品加勒比| 国产精品无码久久四虎| 久久精品国产亚洲欧美| 99精品国产综合久久久久五月天| 久久久WWW成人免费毛片| 国产一级做a爰片久久毛片| 久久天天躁夜夜躁狠狠| 亚洲精品国产自在久久| 狠狠色综合久久久久尤物| 久久精品视频网| 国产精品久久久久aaaa| www性久久久com| 99久久99久久久精品齐齐| 久久婷婷五月综合97色一本一本| 国产激情久久久久久熟女老人| 2021久久精品免费观看| 久久天天躁狠狠躁夜夜avapp| 一级a性色生活片久久无少妇一级婬片免费放|