我有一個使用ClickOnce部署的WinForms應用程序。在應用程序項目中,我在「發佈」設置的「應用程序文件」對話框中將一些標記爲內容的文件標記爲「數據文件」。我還有一些標記爲「包含自動」的內容文件。未使用ClickOnce應用程序部署數據文件
當我發佈時,安裝應用程序,然後在啓動時立即使用DirectoryNotFoundException(下面的完整堆棧跟蹤)執行崩潰。
調查應用程序文件夾我可以找到所有標記爲「包括自動」的文件,整齊地放置在可執行文件中。雖然沒有安裝標記爲「數據文件」的文件(我已經檢查了可執行文件夾和數據文件夾)。
請注意,發佈和安裝都是從本地計算機上的文件夾完成的,而不是通過網站完成的。
如果我從「數據文件」更改爲所有內容文件的標準包含,則所有內容都可以作爲魅力使用。
我正在運行(喘氣)Windows XP SP3和.Net 3.5 SP1。
System.IO.DirectoryNotFoundException了未處理 消息= 「系統無法找到指定的路徑(從HRESULT異常:0x80070003)。」 源= 「mscorlib程序」 堆棧跟蹤: 在System.Deployment.Internal.Isolation。 IActContext.SetApplicationRunningState(UInt32的dwFlags中,UInt32的ulState,UInt32的& ulDisposition) 在System.ActivationContext.SetApplicationState(ApplicationState多個) 在System.AppDomain.SetupDomainForApplication(ActivationContext activationContext,字符串[] activationData) 在System.AppDomain.SetupApplicationHelper(證據providedSecurityInfo,證據創建者SecurityInfo,ApplicationIdentity appIdentity, ActivationContext activationContext,String [] activationData) at System.AppDomain.SetDomainManager(Evidence providedSecurityInfo,Evidence creatorsSecurityInfo,IntPtr parentSecurityDescriptor,Boolean publishAppDomain) at System.AppDomain.SetDefaultDomainManager(String fullName,String [] manifestPaths,String [] activationData) InnerException:
今天這樣做對我有效。將生成操作設置爲「內容」和「複製到輸出目錄」以「始終複製」。 – MansoorShaikh 2014-05-28 12:01:50