2009-12-03 36 views
6

我正在處理一個由通過ClickOnce部署的服務器和客戶端應用程序組成的項目。 第一次安裝客戶端時,用戶點擊http://...file.application鏈接,並且在安裝過程中與用戶的交互是最小的(只是標準的ClickOnce安裝/不安裝對話框)。是否可以自動執行ClickOnce部署?

我們的一位客戶希望能夠在用戶的機器上自動安裝客戶端。有沒有辦法在沒有任何用戶交互的情況下安裝ClickOnce應用程序,以便自動執行部署過程?

提供這種部署的軟件是否存在?

我的問題來自於這個事實,我不知道ClickOnce部署是如何工作的(我甚至不知道是否可以從命令行運行ClickOnce安裝程序......) clickonce應用程序並不像Windows Installer那樣打包,我不確定任何事情。

有關這方面的任何信息都是值得歡迎的。

+3

所以....點擊Nunce部署。 :) – Craig 2009-12-03 17:19:45

回答

5

有許多第三方解決方案可用於自動部署。你也可以創建你自己的腳本,但你需要一些方法來調用它們。如果你的客戶機被配置爲尋找網絡啓動腳本,那麼這將是一個理想的方法。通常情況下,自動部署使用標準部署包,即包含setup.exe和所需文件,因此這可能是打包應用程序的最佳方式。

ClickOnce專門設計用於由最終用戶進行手動部署,並且只在目標是自動部署時纔會造成混淆。顯然,您可以保留ClickOnce部署,以防有人想手動安裝您的應用程序,但如果您將其單獨打包以進行自動部署,它會使事情更輕鬆。

+0

「ClickOnce專門爲最終用戶的手動部署而設計,只在目標是自動部署時纔會造成混淆。」 這是真的,我在想這件事時實際上很困惑。 如果像您建議的那樣,我將應用程序打包爲自動部署的不同方式,那麼應用程序註冊的方式與ClickOnce部署的應用程序不同嗎?兩次安裝相同的應用程序是不可能的? – 2009-12-04 10:49:42

+0

確實如此,ClickOnce安裝將獨立於自動部署的應用程序而存在。但是,如果發佈的ClickOnce部署永遠不會比自動部署版本舊,那麼這應該不成問題。只要啓動ClickOnce版本的用戶沒有獲得比自動部署的軟件包更早的版本,那麼他們正在運行單獨的安裝並不重要。 – 2009-12-05 09:05:38

1

您可以構建標準的msi安裝程序並通過組策略進行部署,但更新有點棘手。作爲一個混合體,你可以是一個msi安裝程序(通過組策略部署),它只是在桌面上安裝正確的clickonce地址的快捷方式。

1

可以將其自動化。訣竅是清單生成和簽署的方式。

一旦構建了應用程序清單並重命名了部署的文件,您就可以將一組文件和文件夾複製到安裝源。