• <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.¢% 閱讀(582) 評論(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這個撇腳的東西了奴.
            狠狠狠色丁香婷婷综合久久五月 | 亚洲欧洲精品成人久久奇米网| 国内精品伊人久久久久| 国产精品久久久99| 最新久久免费视频| 久久精品九九亚洲精品| 久久91精品综合国产首页| 中文字幕日本人妻久久久免费 | 久久亚洲春色中文字幕久久久| 精品久久久久久无码专区| 欧美精品丝袜久久久中文字幕| 久久青青草原亚洲av无码app| 精品综合久久久久久88小说 | 久久国产精品99久久久久久老狼 | 久久久亚洲欧洲日产国码是AV | 久久精品一本到99热免费| 欧美久久久久久午夜精品| 狠狠色丁香久久综合五月| 精品久久久久成人码免费动漫| 久久精品这里热有精品| 久久综合精品国产二区无码| 久久精品亚洲精品国产欧美| 国产日产久久高清欧美一区| 综合人妻久久一区二区精品| 亚洲国产成人久久综合区| 久久免费大片| 中文字幕无码久久精品青草| 久久婷婷五月综合成人D啪| 久久99中文字幕久久| 久久精品国产亚洲AV无码麻豆| 久久人人爽人人人人片av| 久久精品国产只有精品66| 成人精品一区二区久久久| 久久777国产线看观看精品| 国产美女久久精品香蕉69| 日韩AV无码久久一区二区| 精品久久久久久中文字幕大豆网| 国产精品久久久久久久久久影院| 久久亚洲天堂| 99久久免费国产精品特黄| 久久婷婷五月综合97色一本一本|