2016-02-14 4 views
2

Я apolgise, я немного ржавый, как я не касался партии в течение 4 лет ....Пакетный файл для запуска .exe и заменить файл - на .exe близко существующий файл подкачки назад

I Я пытаюсь заменить звук в моей паровой папке при запуске программы, которую я успешно достиг, используя задержку секунды или два. Однако при запуске Steam CRC для проверки поврежденных/отсутствующих файлов и в результате я теряю свой замененный звук. Чтобы противостоять этому, я сделал еще один пакетный файл, чтобы повторно заменить старый файл, когда приложение закрыто, таким образом, следующий парад запуска счастлив!

//replace our unwanted sound 
    "C:\Program Files (x86)\Steam\Steam.exe" 
pause 
timeout /t 4 
xcopy "C:\Users\thoma\Desktop\steam sounds\message.wav" "C:\Program Files (x86)\Steam\friends\message.wav" /Y 

- эти отдельные файлы.

//re-add our unwanted sound once the process is closed 
start "" /W "C:\Program Files (x86)\Steam\Steam.exe" 

xcopy "C:\Program Files (x86)\Steam\friends\message.wav" "C:\Users\thoma\Desktop\steam sounds\message.wav" /Y 

ответ

0

Я бы копию Паровой message.wav и сохранить его в папку, и перед запуском Steam.exe иметь его копию оригинальной версии в (может сэкономить время на проверку CRC). Затем, после того, как он запускает пар, сценарий копируется в ваш .wav-файл.

Также просто примечание // в пакетном файле не комментирует что-либо, просто бросает ошибки, используйте команду REM перед текстом.

Так что ваш сценарий может выглядеть следующим образом:

@echo off 
SET STEAMPATH = "C:\Program Files (x86)\Steam" 
SET STEAM_WAV = "C:\Users\thoma\Desktop\steam sounds\original\message.wav" 
SET MY_WAV = "C:\Users\thoma\Desktop\steam sounds\message.wav" 
ECHO Putting original file in (to speed up CRC check)... 
xcopy %STEAM_WAV% %STEAMPATH%\friends\message.wav /y /c 
ECHO Starting Steam... 
start "" "%STEAMPATH%\Steam.exe" 
ECHO Waiting for Steam.exe to start... 
:waiting 
For /F "tokens=1" %%i In ('Tasklist /NH /FI "IMAGENAME EQ steam.exe"') Do Set sb=%%i 
If /i %sb%==steam.exe (goto copyfile) Else (goto waiting) 
ECHO Copying custom wav in... 
:copyfile 
xcopy %MY_WAV% %STEAMPATH%\friends\message.wav /y /c 
ECHO DONE..... 
TIMOUT /T 5 

Смотрите, если это работает для вас.

+0

привет, спасибо за ваш ответ! Я отредактировал вашу партию в соответствии с моей целью, но не только не запускал пар, но, насколько я могу судить, звук тоже не копировался. Я изменил «start» «% STEAMPATH%» именно так и включил Steam.exe в «SET STEAMPATH», который работал изначально, но теперь не ... –

+0

https://www.dropbox.com/s/xfgwockl9p9m7na /2016-02-15_17-02-32.mp4?dl=0 –

+0

Вам, вероятно, придется запускать его как admin, так что это может означать, что администратор не может получить доступ к вашей папке thoma. Поэтому вам может потребоваться переместить звуковые файлы в отдельную папку, отличную от папки пользователей. –