अनुपलब्ध है हमारे उपयोगकर्ताओं में से एक ClickOnce के साथ एक बहुत ही गंभीर समस्या है। त्रुटि एक क्लासिक है:ClickOnce इंस्टॉल के दौरान FileNotFoundException, HKCU Software Classes Software
Following errors were detected during this operation. * [14/10/2011 01:40:25] System.IO.FileNotFoundException
- The system cannot find the file specified. (Exception from HRESULT: 0x80070002)
- Source: System.Deployment
- Stack trace:
at System.Deployment.Internal.Isolation.IsolationInterop.GetUserStore(UInt32 Flags, IntPtr hToken, Guid& riid)
at System.Deployment.Internal.Isolation.IsolationInterop.GetUserStore()
at System.Deployment.Application.ComponentStore..ctor(ComponentStoreType storeType, SubscriptionStore subStore)
at System.Deployment.Application.SubscriptionStore..ctor(String deployPath, String tempPath, ComponentStoreType storeType)
at System.Deployment.Application.SubscriptionStore.get_CurrentUser()
at System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(Uri activationUri, Boolean isShortcut, String textualSubId, String deploymentProviderUrlFromExtension, BrowserSettings browserSettings, String& errorPageUrl) at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state)
लेकिन पारंपरिक समाधानों में से कोई भी काम नहीं करता है। हमने कोशिश की:
- हटाएँ फ़ोल्डर और प्रकट संबंधित में फ़ाइलों को आवेदन
- करने के लिए 2.0 फ़ोल्डर
- हटाएँ अनुप्रयोग फ़ोल्डर
- भागो दाना -cc
- को मार डालो dfsvc.exe और दोबारा कोशिश करें (dfsvc हटाएं प्रत्येक बार विफल होने पर लोड हो जाता है)
मैंने .NET 3.5 और .NET 4.0 में एक helloworld ऐप प्रकाशित किया और पूरे \ प्रकाशित फ़ोल्डर को उसकी मशीन पर कॉपी किया। यह भी एक ही त्रुटि दे, स्थापित नहीं किया था। अंत में, मैं रॉबिनडॉटनेट प्रति वर्धित लॉगिंग जोड़ने की कोशिश करने के लिए रजिस्ट्री में गया और महसूस किया कि HKCU \ Software \ Classes \ Software पूरी तरह से गायब था। कुछ और धागे के बाद, मैं गया और UsrClass.dat का नाम बदल दिया। हालांकि, लॉगिंग और लॉग इन करने के बाद, इसे पुनर्निर्मित नहीं किया गया था। मुझे शायद यह मुद्दा संदेह है। ClickOnce फिर से काम करने के तरीके पर कोई विचार?
यह एक उचित ताजा विंडोज 7 व्यावसायिक इंस्टॉल है।
अद्यतन यहां एक और सुराग है। हम किसी भी चीज़ पर UsrClass.dat का नाम बदलने या विंडोज़ से किसी भी शिकायत के बिना इसे हटाने में सक्षम हैं - इसलिए इसे लोड नहीं किया जा रहा है। मेरी मशीन पर यह शिकायत करता है कि यह उपयोग में है।
आपका क्या मतलब है जब आप कहते हैं कि आप .NET 3.5 में एप्लिकेशन प्रकाशित और .NET 4.0 और उसकी मशीन के लिए \ प्रकाशित फ़ोल्डर की नकल की? आपके आवेदन के लिए इंस्टॉलेशन यूआरएल क्या है? क्योंकि मशीन पर इसे कॉपी करने से यह काम नहीं करेगा अगर यह कहीं और से स्थापित करने के लिए सेट है - यह उस स्थान को देखेगा। – RobinDotNet