2011-10-15 9 views
10

अनुपलब्ध है हमारे उपयोगकर्ताओं में से एक 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) 

लेकिन पारंपरिक समाधानों में से कोई भी काम नहीं करता है। हमने कोशिश की:

  1. हटाएँ फ़ोल्डर और प्रकट संबंधित में फ़ाइलों को आवेदन
  2. करने के लिए 2.0 फ़ोल्डर
  3. हटाएँ अनुप्रयोग फ़ोल्डर
  4. भागो दाना -cc
  5. को मार डालो dfsvc.exe और दोबारा कोशिश करें (dfsvc हटाएं प्रत्येक बार विफल होने पर लोड हो जाता है)

मैंने .NET 3.5 और .NET 4.0 में एक helloworld ऐप प्रकाशित किया और पूरे \ प्रकाशित फ़ोल्डर को उसकी मशीन पर कॉपी किया। यह भी एक ही त्रुटि दे, स्थापित नहीं किया था। अंत में, मैं रॉबिनडॉटनेट प्रति वर्धित लॉगिंग जोड़ने की कोशिश करने के लिए रजिस्ट्री में गया और महसूस किया कि HKCU \ Software \ Classes \ Software पूरी तरह से गायब था। कुछ और धागे के बाद, मैं गया और UsrClass.dat का नाम बदल दिया। हालांकि, लॉगिंग और लॉग इन करने के बाद, इसे पुनर्निर्मित नहीं किया गया था। मुझे शायद यह मुद्दा संदेह है। ClickOnce फिर से काम करने के तरीके पर कोई विचार?

यह एक उचित ताजा विंडोज 7 व्यावसायिक इंस्टॉल है।

अद्यतन यहां एक और सुराग है। हम किसी भी चीज़ पर UsrClass.dat का नाम बदलने या विंडोज़ से किसी भी शिकायत के बिना इसे हटाने में सक्षम हैं - इसलिए इसे लोड नहीं किया जा रहा है। मेरी मशीन पर यह शिकायत करता है कि यह उपयोग में है।

+0

आपका क्या मतलब है जब आप कहते हैं कि आप .NET 3.5 में एप्लिकेशन प्रकाशित और .NET 4.0 और उसकी मशीन के लिए \ प्रकाशित फ़ोल्डर की नकल की? आपके आवेदन के लिए इंस्टॉलेशन यूआरएल क्या है? क्योंकि मशीन पर इसे कॉपी करने से यह काम नहीं करेगा अगर यह कहीं और से स्थापित करने के लिए सेट है - यह उस स्थान को देखेगा। – RobinDotNet

उत्तर

0

मैं क्लिकऑन के बारे में भूल जाऊंगा और उस रजिस्ट्री को हल कर दूंगा। यह शायद StackOverflow के लिए एक सही विषय है, और अधिक की तरह SuperUser.com ...

वैसे भी नहीं है:
1) की कोशिश करो एक सिस्टम पुनर्स्थापना, आप एक राज्य है जहां कि रजिस्ट्री हाइव मौजूद पाते हैं या नहीं, आप हो सकता है कई हफ्तों वापस जाने के लिए।
2) अपनी मशीन से उस रजिस्ट्री हाइव को निर्यात करने का प्रयास करें और इसे क्लाइंट मशीन में आयात करें। देखें कि क्या त्रुटि दूर हो गई है या यदि यह एक अलग छिद्र के बारे में शिकायत करता है - यह संभव हो सकता है कि रजिस्ट्री दूषित हो और अन्य हाइव भी गायब हो जाएं ...
3) यदि ये दोनों समस्या को ठीक नहीं करते हैं, तो आप एक साफ इंस्टॉल करने के बेहतर हैं (यह समस्या के सटीक कारण की तलाश में तेज़ होगा और आप सुनिश्चित कर सकते हैं कि सबकुछ ठीक हो जाएगा)
4) अंत में किसी भी रजिस्ट्री क्लीनर या पीसी ट्यूनिंग सॉफ़्टवेयर को अनइंस्टॉल करें। वे समस्याओं का कारण बनने के लिए जाने जाते हैं, रजिस्ट्री भ्रष्टाचार उनमें से एक है। हार्डवेयर समस्याओं के लिए भी जांच करें, एचडीडी ने एक खराब ब्लॉक विकसित किया हो सकता है या रैम शायद दोषपूर्ण हो सकता है (सुनिश्चित करने के लिए 3+ पास के लिए MemTest चलाएं) ...

0

इसे अनइंस्टॉल करने का प्रयास करें और फिर इसे पुनर्स्थापित करें! मुझे यकीन है कि यह काम करना चाहिए।

-1

रजिस्ट्री की सफाई के लिए एक टूल आज़माएं। मैंने कभी इसका अनुभव नहीं किया है, लेकिन मुझे लगता है कि यह आपके एप्लिकेशन से संबंधित नहीं है और न ही मैनिफेस्ट है, ऐसे सॉफ़्टवेयर या टूल की जांच करें जो इस समस्या को उस उपयोगकर्ता के कंप्यूटर में ला सकता है।

0

तहत फ़ोल्डरों को हटाने का प्रयास करें:

C:\Users\username\AppData\Local\Apps\2.0\ 

Data छोड़कर फ़ोल्डर।

आप .नेट फ्रेमवर्क अस्थायी फ़ाइलों को भी हटा देना चाहिए:

C:\WINDOWS\Microsoft.NET\Framework\<version>\Temporary ASP.NET Files