2011-05-13 226 views
0

我實現了自動更新我的應用程序。在下載安裝程序結束時,我不得不使用bat文件自動更新

  1. 關閉我的應用程序
  2. 新版本執行安裝程序。

我嘗試這樣做,使用下面的蝙蝠腳本:

sleep 5 
"C:/DOCUME~1/.../.../Temp\my_app_installer.exe" 

在我的主要程序代碼寫到:

ShellExecute(0, L"open", batScriptPath.utf16(), 0, 0, SW_HIDE); 
closeApp(); 

但它不工作。在關閉應用程序之前,不會調用睡眠函數並執行安裝程序。這不好。你能否說我如何解決這個錯誤或更新應用程序的其他方法。

謝謝。

+0

「睡眠5」在我的Windows機器上不被識別爲有效的命令。從命令提示符處「睡眠5」是否適合您? – 2011-05-13 09:25:39

+0

這個命令可以在我的機器上運行(win xp,32位)。 – mish1231 2011-05-13 09:50:15

+0

只是爲了調試,嘗試「記事本」,而不是「睡眠5」,看看它是否啓動記事本。如果是這樣,那麼問題可能是您的sleep.exe沒有被命令解釋器找到。 (注意,睡眠不是標準的Windows XP命令,我在Windows XP機器上試過並確認了這一點。) – 2011-05-13 10:47:39

回答

2

您可以將您的任務寫入安裝程序本身,而不是在批處理文件中完成。安裝程序可能會檢查是否有舊應用程序實例打開,並且在打開時他只會試圖關閉它。成功之後 - 他將開始真正的安裝。