मुझे अपने Excel Addin में "प्रमाणपत्र स्टोर में प्रकट हस्ताक्षर प्रमाणपत्र प्राप्त करने में असमर्थ" क्यों मिल रहा है?


216

मुझे एक एक्सेल ऐड-इन प्रोजेक्ट मिला है जो विजुअल स्टूडियो 2008 में कुछ साल पहले बनाया गया था। इसे कुछ बदलाव करने के लिए मिला है, इसलिए मैंने विजुअल स्टूडियो 2010 में अपग्रेड किया है (केवल आईडीई जो मैं उपयोग करने में सक्षम हूं)। सुनिश्चित नहीं है कि यह समस्या पैदा कर रहा है लेकिन यह पृष्ठभूमि की जानकारी है।

जब मैं कोड की जांच करता हूं और इसे संकलित करता हूं तो मुझे त्रुटि मिलती है, "त्रुटि 1 प्रमाणपत्र स्टोर में प्रकट हस्ताक्षर प्रमाण पत्र खोजने में असमर्थ।"

क्या कोई मुझे बता सकता है कि इसका क्या मतलब है और इसे कैसे ठीक किया जाए?

जवाबों:


250

आपको उस प्रमाणपत्र को अपनी मशीन में फिर से जोड़ना होगा या किसी अन्य प्रमाणपत्र को चुनना होगा।

एक अन्य प्रमाण पत्र चुनने के लिए या एक को फिर से तैयार करने के लिए, प्रोजेक्ट के गुण पृष्ठ पर जाएं, साइनिंग टैब पर और या तो क्लिक करें

  • स्टोर से सेलेक्ट पर क्लिक करें
  • फाइल सेलेक्ट पर क्लिक करें
  • क्रिएट टेस्ट सर्टिफिकेट पर क्लिक करें

एक बार इनमें से किसी एक को पूरा करने के बाद, आपको इसे फिर से बनाने में सक्षम होना चाहिए।


134
फिर Project's properties pageआप Signing tabचेकबॉक्स को अनचेक कर सकते हैं "साइन इन क्लिकऑनसेप्ट मैनिफ़ेस्ट"।
मरिंजो

10
@RubensMariuzzo - नहीं अगर आप वास्तव में इस पर हस्ताक्षर करना चाहते हैं
मैट विल्को

Office ऐड-इन्स के लिए अनचेक असंभव है और वापस जाँच की जाएगी।
it3xl

1
बिल्ड सर्वर पर "टेस्ट सर्टिफिकेट बनाएं" ऑपरेशन कैसे किया जा सकता है?
19we में ryanwebjackson

138

मुझे यह समाधान मिला जिसने मेरे लिए समस्या हल कर दी: आपकी सभी प्रविष्टियों को हटा देना *.csprojजो कि इसमें आती हैं:

<manifestcertificatethumbprint>...</manifestcertificatethumbprint>
<manifestkeyfile>...</manifestkeyfile>
<generatemanifests>...</generatemanifests>
<signmanifests>...</signmanifests>

1
यह तब आवश्यक है जब आवेदन ClickOnce हुआ करता था, लेकिन अब नहीं है (
साइनबॉक्स

1
मेरे लिए भी काम किया। जाहिरा तौर पर परियोजना फ़ाइल में कुछ बचे हुए थे कुछ प्रयोग हमने उस पर किए थे जिन्हें मैन्युअल रूप से साफ करना था। BTW - मुझे प्रोजेक्ट से .snk फ़ाइल भी निकालनी थी। तो मेरे लिए यह था: निकालें। साइन करें, हस्ताक्षर करना अक्षम करें, प्रोजेक्ट फ़ाइल संपादित करें, प्रोजेक्ट पुनः लोड करें और हस्ताक्षर सक्षम करें।
OSH

यदि आपको कभी भी ClickOnce की जाँच करनी हो और तब साइन असेंबली में स्विच किया गया हो, तो इसकी आवश्यकता है।
रोलैंड

1
यह सबसे अच्छा जवाब है।
होमम

3
"साइनिंग द क्लाइंटऑन मैनिफेस्ट" को अनचेक करना हमेशा काम नहीं करता है। समाधान है कि अपनी csproj फ़ाइलों से उल्लिखित पंक्तियों को हटा दें
अमृत

98

मुझे जाने के लिए एक त्वरित समाधान "प्रोजेक्ट पर क्लिक करें मेनिफेस्टों पर क्लिक करें" को अनचेक करना था: प्रोजेक्ट -> (प्रोजेक्ट नाम) गुण -> साइनिंग टैब


1
मुझे समस्या से छुटकारा पाने के लिए प्रोजेक्ट गुणों में साइनिंग टैब के तहत दोनों को अनचेक करना Sign the ClickOnce manifestsऔर Sign the assemblyचेक बॉक्स लगाना था । मैं किसी भी हस्ताक्षर का उपयोग नहीं कर रहा था।
आरबीटी 3

13

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


24
"आपको उस प्रमाणपत्र को अपनी मशीन में फिर से जोड़ने या किसी अन्य प्रमाणपत्र को चुनने की आवश्यकता है।" यदि आप जानते हैं कि प्रमाण पत्र कैसे जोड़ना है, तो यह बताना आवश्यक होगा कि इस थ्रेड में कैसे या इस थ्रेड में कैसे लिंक है। जैसा है, आप का उत्तर केवल आधा उत्तर है।

1
प्रोजेक्ट गुण पृष्ठ> Signingऊर्ध्वाधर टैब में> पर क्लिक करें Create test certificate। और एक नई बनाई गई फ़ाइल करने के लिए मत भूलना You.Project_TemporaryKey.pfxक्योंकि .pfxफ़ाइलों को अक्सर अनदेखा किया जाता है
it3xl

मुझे लगता है कि यह समाधान विसुला स्टूडियो कार्यालय परियोजनाओं के लिए एकमात्र उचित है।
it3xl

13

नए प्रमाणपत्र जोड़ने से मेरे लिए यह समस्या हल हो गई। गुण पृष्ठ -> हस्ताक्षर -> परीक्षण प्रमाण पत्र बनाएँ पर क्लिक करें


क्या बिल्ड सर्वर (कमांड लाइन के माध्यम से) पर ऐसा करने का कोई तरीका है?
रैनबेजाकसन

8

सुनिश्चित करें कि आप .pfxभंडार के लिए फ़ाइलें बनाते हैं।

मैं बस *.pfxअपने डिफ़ॉल्ट में पाया .gitignore। इसे (द्वारा #) टिप्पणी करें और परिवर्तन करें। फिर रिपॉजिटरी खींचें और पुनर्निर्माण करें।


3
  1. इस पोस्ट में उल्लिखित इन प्रविष्टियों को हटाएं: http://manfredlange.blogspot.ca/2008/03/visual-studio-unable-to-find-manifest.html

  2. प्रोजेक्ट रूट से .snk या .pfx फ़ाइलों को भी हटा दें।

GitHub के लिए इन परिवर्तनों को धकेलना न भूलें, जेनकिंस के लिए केवल GitHub से स्रोत खींचता है।


0

.Csproj फ़ाइल में त्रुटिपूर्ण बचे हुए प्रविष्टियों का मुद्दा अभी भी VS2015update3 के साथ होता है और यह तब भी हो सकता है यदि आप किसी भिन्न के लिए हस्ताक्षर प्रमाणपत्र को बदलने का प्रयास करते हैं (भले ही वह प्रमाणपत्र चयन ड्रॉपडाउन में 'नए' विकल्प का उपयोग करके उत्पन्न होता है) । स्वीकार किए गए उत्तर में सलाह (हस्ताक्षर किए गए के रूप में चिह्नित करें, सहेजें, अनलोड प्रोजेक्ट, संपादित करें .csproj, पुराने प्रमाण पत्र / थंबप्रिंट्स / कीज़ और रीलोड प्रोजेक्ट से संबंधित गुण हटा दें, प्रमाण पत्र) विश्वसनीय है।


0

मैं एक नई कुंजी बनाता हूं, मुझे पुराने वाले के लिए csproj की खोज करनी थी और इसे रिफलेक्टर करना था।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.