0
我有一個批處理文件,我從閃存驅動器運行。此文件試圖從批處理文件開始在後臺啓動程序
1. Close 2 programs
2. Update data on the computer based on the data on the flash drive
3. Restart the programs
在該批次中的代碼是:
taskkill /IM "MyProgram".exe
taskkill /f /fi "imagename eq MyProgram.exe"
copy e:\File1.xml C:\Folder\SubFolder1\Themes\Data\File1.xml /Y
copy e:\File2.xml C:\Folder\SubFolder1\Themes\Data\File2.xml /Y
copy e:\File3.xml C:\Folder\SubFolder2\Themes\Data\File3.xml /Y
copy e:\File4.xml C:\Folder\SubFolder2\Themes\Data\File4.xml /Y
start /MAX "" "C:\Folder\SubFolder2\MyProgram.exe"
start /MAX "" "C:\Folder\SubFolder1\MyProgram.exe"
前兩個步驟工作得很好,與上線1-6的命令。我的問題始於步驟3和第7和第8行的命令。
批處理命令是否有問題?
編輯:挖了多一點後,我發現程序似乎是在後臺開始。在查看任務管理器時,程序將顯示在「後臺進程」部分中,而不是按預期顯示在前臺中。
根據當前的計算機驅動器字母'e:'可能是錯誤的。或者只使用'\'或者使用'%〜d0'從運行的批處理中取出驅動器 – LotPings
@LotPings - 前2個步驟正常工作。 e:驅動器在過程中使用的計算機之間保持不變。 – rdbradshaw
沒有保證總是得到相同的驅動器號。前兩個命令不使用任何驅動器號。 (1,1,4)中使用for/l %% x的測試會複製「%〜d0 \ file %% x.xml」「C:\ Folder \ SubFolder2 \ Themes \ Data \ File %% x.xml 「/ Y'而不是重複不會造成傷害。 – LotPings