2017-06-15 93 views
0

我有一個通過ClickOnce部署的Windows窗體應用程序。在應用程序中,我利用應用程序設置來存儲基本連接信息。在我發佈應用程序並且已經在日常使用中的兩年和200多次更新中,我沒有遇到個別用戶修改自己設置的問題,並且在應用程序重新啓動和更新時保留這些設置。從命令行運行時找不到ClickOnce設置

但是,我正在嚮應用程序中添加一項功能,以允許在任務計劃程序中安排某些任務。一切工作正常(任務已安排好,應用程序通過傳遞正確的參數被調用),但是當程序啓動時,設置不會被讀取。

我可以通過直接從命令行手動啓動應用程序來複制此內容。應用程序將打開,但唯一可用的設置是最初隨應用程序一起提供的設置。

我的最終問題是這樣的:如何從命令行調用我的ClickOnce應用程序並使其以相同的方式打開,就好像我從開始菜單啓動它一樣?

謝謝!!

回答

1

看起來問題的答案是指出Task Scheduler啓動在開始菜單快捷方式中找到的.appref-ms文件。你不能指向.exe文件。

0

這很可能是由命令行在不同用戶下啓動ClickOnce應用程序引起的。

嘗試從命令行或任務計劃程序啓動ClickOnce,並加載任務管理器並查看該應用程序正在運行的用戶。如果它運行在非登錄狀態的用戶上,那麼您可以以運行的用戶身份(如果不是系統用戶)登錄並設置所需的設置,或者嘗試模擬期望的用戶通過任務調度器。

如果這些都不適用,可以添加一個命令行開關,如果未找到任何設置,則會保存一組符合您需要的默認設置。

+0

感謝這個想法,它真的讓我想起它,但沒有。當我運行應用程序(通過命令行或通過任務計劃程序)時,它顯示我是調用它的用戶。創建任務時,默認情況下,該任務設置爲僅在我的用戶名下運行。 –

+0

當您通過命令或任務計劃程序運行應用程序時,clickonce應用程序是否在更新時進行更新? – KeithN

+0

簡答 - 是的。 –