• <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>

            S.l.e!ep.¢%

            像打了激速一樣,以四倍的速度運轉,開心的工作
            簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            P處理的雙進程守護

            Posted on 2009-08-12 21:16 S.l.e!ep.¢% 閱讀(587) 評論(1)  編輯 收藏 引用 所屬分類: DOS
            @echo off & SetLocal EnableDelayedExpansion

            set "self=%~0"
            if /i "%~1"=="ExitCode" goto :EXIT
            if /i "%~1"=="" echo 現在是測試運行
            if /i "%~1"=="WIN_Exit" echo 貌似我又復活了
            echo start "" "%~0" WIN_Exit>ErrExit.cmd
            call :查找進程

            call :FINDEXISTPID

            call :守護進程

            start Check.vbs
            :REINPUT
            ? ?? ???echo -----------------------------------------
            ? ?? ???echo??輸入:ExitCode 完全退出程序
            ? ?? ???echo -----------------------------------------
            ? ?? ???set /p "Input=請輸入入口代碼:"
            ? ?? ???if /i "%Input%"=="ExitCode" goto :EXITPROCESS_OK
            goto :REINPUT

            :查找進程
            echo for each ps in getobject _>ps.vbs
            echo ^("winmgmts:\\.\root\cimv2:win32_process"^).instances_ >>ps.vbs
            echo if ps.name ="cmd.exe" Then wscript.echo ps.handle^&vbtab^&ps.name>>ps.vbs
            echo next>>ps.vbs
            goto :EOF

            :FINDEXISTPID
            ? ?? ???if exist ExistPid.txt del ExistPid.txt
            ? ?? ???for /f "tokens=1,* " %%m in ('cscript //nologo ps.vbs') do echo %%m>>ExistPid.txt
            ? ?? ???for /f "tokens=1,* " %%m in ('cscript //nologo ps.vbs') do (
            ? ?? ?? ?? ?? ? type ExistPid.txt | find /i "%%m">nul && set "Pid=%%m"
            ? ?? ?? ?? ?? ? )
            goto :EOF

            :守護進程
            echo set Cleaner=createobject^("wscript.shell"^)>Check.vbs
            echo do>>Check.vbs
            echo WScript.Sleep 100>>Check.vbs
            echo if not isProcessExists^("%Pid%"^) then>>Check.vbs
            echo Cleaner.run "ErrExit.cmd">>Check.vbs
            echo Exit do>>Check.vbs
            echo End if>>Check.vbs
            echo loop>>Check.vbs
            echo Function isProcessExists^(proName^)>>Check.vbs
            echo Set objWMIService = GetObject^("winmgmts:" ^& "{impersonationlevel=impersonate}^!\\.\root\cimv2"^)>>Check.vbs
            echo Set colProcessList = objWMIService.ExecQuery^("Select * from Win32_Process Where Handle='" ^& proName ^& "'"^)>>Check.vbs
            echo isProcessExists = ^(colProcessList.Count ^<^> 0^)>>Check.vbs
            echo End Function>>Check.vbs
            goto :EOF
            :EXITPROCESS_OK
            echo for each ps in getobject _>ps.vbs
            echo ^("winmgmts:\\.\root\cimv2:win32_process"^).instances_ >>ps.vbs
            echo if ps.name ="WScript.exe" Then wscript.echo ps.handle^&vbtab^&ps.name>>ps.vbs
            echo next>>ps.vbs

            for /f "tokens=1,* " %%i in ('cscript //nologo ps.vbs') do ntsd -c q -p %%i
            echo del ps.vbs>>deltemp.cmd
            echo del check.vbs>>deltemp.cmd
            echo del ErrExit.cmd>>deltemp.cmd
            echo del ExistPid.txt>>deltemp.cmd
            echo del run.vbs>>deltemp.cmd
            echo del deltemp.cmd>>deltemp.cmd
            echo set Cleaner=createobject^("wscript.shell"^)>>run.vbs
            echo Cleaner.run "cmd /c deltemp.cmd",^0>>run.vbs
            start run.vbs

            :EXIT
            exit

            Feedback

            # re: P處理的雙進程守護  回復  更多評論   

            2013-04-28 19:29 by 幻想
            這個感覺變麻煩了,用tasklist 然管道給 findstr 查找進程名,然后再放入for /f 中查看是否有數據就可以了.不需要間接地調用vbs,如果用vbs的話就不需要用bat這個撇腳的東西了奴.
            精品国产乱码久久久久久人妻| 亚洲日本久久久午夜精品| 久久婷婷五月综合色高清| 精品久久人妻av中文字幕| 国产精品岛国久久久久| 久久久久亚洲AV综合波多野结衣| 亚洲美日韩Av中文字幕无码久久久妻妇| yy6080久久| 久久免费国产精品一区二区| 久久亚洲中文字幕精品一区| 97久久精品人人澡人人爽| 中文字幕久久波多野结衣av| 久久国产免费| 久久青青草原国产精品免费| 国内精品伊人久久久影院 | 综合久久精品色| 91精品国产9l久久久久| 中文字幕久久波多野结衣av| 久久亚洲中文字幕精品一区四| 久久久久人妻精品一区| 久久天天躁狠狠躁夜夜不卡| 久久精品亚洲男人的天堂| 久久国产免费观看精品3| 久久久一本精品99久久精品88| 久久播电影网| 99久久综合国产精品二区| 69久久夜色精品国产69| 久久99精品久久久久久hb无码| 久久久久精品国产亚洲AV无码| 久久综合九色欧美综合狠狠| 久久久久99精品成人片三人毛片| 久久精品无码一区二区三区| 国产精品福利一区二区久久| 国产精品久久久天天影视| 国产亚洲精品自在久久| 狠狠色丁香久久婷婷综合五月| 日韩精品久久久久久免费| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 久久亚洲AV成人无码国产| 午夜人妻久久久久久久久| 久久精品一本到99热免费|