まず、あなたはタスクが「タスクリスト」コマンド(カウントダウンのためにもtimeoutコマンド)を使用して開かれているかどうかを確認する必要があります場合は
@echo off
setlocal ENABLEDELAYEDEXPANSION
timeout /t 1800
rem Mean '1800' secs is 30 mins
set isOpened=false
set process=[enter your process name in here]
For /f "tokens=* skip=3" %%a in ('tasklist') do (
set dip=%%a
set dip=!dip:~0,29!
set dip=!dip: =!
if "!dip!"=="!process!" set isOpened=true
)
「isOpened」変数は、「真」を返しますプロセス '%process%'はまだ開かれています。
さて、あなたはゲームが、それは(自動的に)終了します他に、保存されます実行されているかどうかをチェックするためのコードを追加する必要があります。
if "!isOpened!"=="true" (
rem Here is where you put your code when the process still running:
set currDate=%date:~10,4%%date:~4,2%%date:~7,2%_%time:~0,2%%time:~3,2%%time:~6,2%
xcopy /s /i "D:\SteamLibrary\steamapps\common\ARK\ShooterGame\Saved\SavedArksLocal" "D:\SteamLibrary\steamapps\common\ARK\ShooterGame\Save Backups\%currDate%\SavedArksLocal"
xcopy /s /i "D:\SteamLibrary\steamapps\common\ARK\ShooterGame\Saved\LocalProfiles" "D:\SteamLibrary\steamapps\common\ARK\ShooterGame\Save Backups\%currDate%\LocalProfiles"
start "D:\SteamLibrary\steamapps\common\ARK\ShooterGame\Binaries\Win64" ShooterGame.exe
)
if "!isOpened!"=="false" (
rem Now insert code if process is not running: (only 'goto :eof')
goto :eof
)
今、あなたが行われ、ここでは、ファイル全体である(uがしたい場合)コピーする:
@echo off
setlocal ENABLEDELAYEDEXPANSION
timeout /t 1800
rem Mean '1800' secs is 30 mins
set isOpened=false
set process=[enter your process name in here]
For /f "tokens=* skip=3" %%a in ('tasklist') do (
set dip=%%a
set dip=!dip:~0,29!
set dip=!dip: =!
if "!dip!"=="!process!" set isOpened=true
)
if "!isOpened!"=="true" (
rem Here is where you put your code when the process still running:
set currDate=%date:~10,4%%date:~4,2%%date:~7,2%_%time:~0,2%%time:~3,2%%time:~6,2%
xcopy /s /i "D:\SteamLibrary\steamapps\common\ARK\ShooterGame\Saved\SavedArksLocal" "D:\SteamLibrary\steamapps\common\ARK\ShooterGame\Save Backups\%currDate%\SavedArksLocal"
xcopy /s /i "D:\SteamLibrary\steamapps\common\ARK\ShooterGame\Saved\LocalProfiles" "D:\SteamLibrary\steamapps\common\ARK\ShooterGame\Save Backups\%currDate%\LocalProfiles"
start "D:\SteamLibrary\steamapps\common\ARK\ShooterGame\Binaries\Win64" ShooterGame.exe
)
if "!isOpened!"=="false" (
rem Now insert code if process is not running: (only 'goto :eof')
goto :eof
)
注:をあなたのプロセス名など)、ファイルの先頭に(「[ここにあなたのプロセス名を入力してください]」テキストを置換することを確認します!
あなたの答えは、たくさん助け、私は私の問題を解決するためにあなたの答えを使用して、それを修正しました。どうもありがとう。投稿した回答を見る – KCB4Rockstar