• <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>
            posts - 23,  comments - 20,  trackbacks - 0
            有時候  多進程程序操作的時候非常容易出現(xiàn)進程死掉的境況  進程一死掉  后續(xù)的就是不可預(yù)料的東西了  因此 要想辦法重啟他  
            自己前兩天做項目的時候就遇到這個問題  因此在網(wǎng)上找到了一些代碼 修改了一下  保存下來吧

             1 
             2 BOOL CSIM_ServerDlg::RestartProccess(CString strProcessName/*需要關(guān)閉的程序名稱*/)
             3 {
             4     CString   strProcessName="";  
             5     
             6     DWORD           iProcessID=0;  
             7     HANDLE   hProcess;  
             8     int           iNumProcess=0;  
             9 
            10     //EnumProcesses方法  
            11     DWORD   m_allProcessArray[1024],   dwArraySize,   m_i_processNum;  
            12     
            13     HMODULE   hMod;//句柄  
            14     char     m_szProcessName[1024]="";//獲取名稱  
            15     //   獲取進程標(biāo)識列表.  
            16     if   (   !EnumProcesses(   m_allProcessArray,   sizeof(m_allProcessArray),   &dwArraySize   ))  
            17     {  
            18         return   FALSE;  
            19     }  
            20     //計算有多少個進程.  
            21     iNumProcess   =   dwArraySize   /   sizeof(DWORD);  
            22     //查找每個進程.  
            23     for   (   int i   =   0;   i   <   iNumProcess;   i++   )  
            24     {  
            25         iProcessID=m_allProcessArray[i];  
            26         hProcess   =   OpenProcess(  PROCESS_TERMINATE /*必不可少*/| PROCESS_QUERY_INFORMATION | PROCESS_VM_READ,FALSE  ,   iProcessID   );  
            27         //   獲取進程名稱.  
            28         if   (   hProcess   )  
            29         {  
            30             if   (   EnumProcessModules(   hProcess,   &hMod,   sizeof(HMODULE),&dwArraySize))  
            31             {  
            32                 GetModuleBaseName(   hProcess,   hMod,   m_szProcessName,   sizeof(m_szProcessName)   );  
            33                 strProcessName.Format("%s",m_szProcessName);  
            34                 strProcessName.MakeUpper();
            35                 if(strProcessName.Find(strProcessName) == 0)  
            36                 {  
            37                     TerminateProcess(hProcess,0);                  
            38                     CloseHandle(hProcess);       
            39                     break;
            40                 }  
            41             }  
            42         } 
            43     }
            44     Sleep(100);    
            45     ShellExecute(this->m_hWnd , "open" , strProcessName , "" , "" , SW_SHOW);
            46     
            47     //此處應(yīng)該Sleep
            48     //Sleep(5000);    //等待程序打開
            49     return 0;
            50 }

            posted on 2009-08-15 14:38 李佳 閱讀(617) 評論(0)  編輯 收藏 引用

            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            <2009年8月>
            2627282930311
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345

            常用鏈接

            留言簿

            隨筆分類

            隨筆檔案

            文章檔案

            相冊

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            久久久久亚洲AV无码网站| 99久久无码一区人妻| 久久国产三级无码一区二区| 国产精品美女久久久| 国产精品成人无码久久久久久| 国产99久久九九精品无码| 日本久久中文字幕| 亚洲精品蜜桃久久久久久| 国产成人久久激情91| 久久精品国产亚洲Aⅴ香蕉 | 国产aⅴ激情无码久久| 国产精品久久久久国产A级| 亚洲国产精品久久久久婷婷软件| 久久九九久精品国产| 人妻精品久久无码区| 亚洲一区精品伊人久久伊人| 久久久久久久久久久精品尤物| 久久久久久久97| 久久精品无码一区二区三区免费| 色综合久久中文字幕无码| 狠狠色丁香婷婷综合久久来来去| 久久久午夜精品福利内容| 国产V亚洲V天堂无码久久久| 久久久久久久亚洲精品| 国产精品久久自在自线观看| 久久人人爽人人爽人人片AV不| 国产日韩久久免费影院| 欧美一区二区三区久久综| 人妻无码久久精品| 办公室久久精品| 91久久国产视频| 久久久精品午夜免费不卡| 久久综合香蕉国产蜜臀AV| 成人综合久久精品色婷婷| 久久性生大片免费观看性| 久久精品国产91久久综合麻豆自制| 无码人妻久久久一区二区三区| 久久精品极品盛宴观看| 四虎久久影院| 国产精品久久婷婷六月丁香| 一本久道久久综合狠狠躁AV|