我正在使用Visual Studio安裝程序爲我的WPF應用程序。退出後臺WPF應用程序來安裝更新版本
我的應用程序總是在後臺運行。
當我想要安裝更新版本的應用程序時,安裝程序會說應用程序文件正在使用中,安裝後它將重新啓動Windows。
如何在安裝程序啓動時退出應用程序,以便應用程序文件不會被使用,並且可以防止重新啓動?
我正在使用Visual Studio安裝程序爲我的WPF應用程序。退出後臺WPF應用程序來安裝更新版本
我的應用程序總是在後臺運行。
當我想要安裝更新版本的應用程序時,安裝程序會說應用程序文件正在使用中,安裝後它將重新啓動Windows。
如何在安裝程序啓動時退出應用程序,以便應用程序文件不會被使用,並且可以防止重新啓動?
您可以添加自定義操作爲您的安裝在安裝
此自定義操作可以先殺死使用shell腳本或VB腳本正在運行的任務。我可以建議你的VB腳本是有點像:
Dim oShell
Dim myApp
Set oShell = CreateObject("WScript.Shell")
'Find myApp in running processes'
for each Process in Service.InstancesOf ("Win32_Process")
if Process.Name = "myApp.exe" then
myApp = Process
end if
next
'Exit myApp'
myApp.SendKeys "exit~"
可以將此存儲爲您的應用程序.vbs文件,並把它作爲您的安裝項目的資源。
不知道這是否對您有效... 我會嘗試獲取正在運行的應用程序的隱藏窗口併發送消息以關閉它。相關的API是FindWindow和SendMessage。 但是,我不知道你是否可以在你的安裝程序中編碼。祝你好運
@MickyD,編輯我的答案。如果你有更好的方法,請建議。 – praty
不知何故自定義操作在安裝完成後運行。無法讓它在之前運行。 – Antti202
感謝編輯 – MickyD