2009-05-19 9 views
6

मैंने ClickOnce इंस्टॉलर का उपयोग करने के लिए विजुअल   स्टूडियो   2008 में अपना सरल प्रोजेक्ट सेट अप किया है। मैंने निर्दिष्ट किया है कि ClickOnce manifests को हमारे comapny की PFX फ़ाइल द्वारा हस्ताक्षरित किया जाना चाहिए। जब मैंने इसे विजुअल स्टूडियो में स्थापित किया, तो उसने पीएफएक्स फ़ाइल के लिए पासवर्ड मांगा, जिसे मैंने खुशी से आपूर्ति की। जब मैं विजुअल स्टूडियो के भीतर से निर्माण और प्रकाशित करता हूं तो सब कुछ ठीक काम करता है। यह मेरी मशीन पर MSBuild से अच्छी इमारत भी काम करता है। मैं क्योंकिएमएसबील्ड का उपयोग क्लिकऑन या असेंबली परिणामों पर हस्ताक्षर करने के लिए एमएसबी 3321

ERROR MSB3321 in 
    C:\WINDOWS\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets(1805,7) 
    : Importing key file "ourCertificate.pfx" was canceled (sic). 

कुछ खोज के बाद मैंने पाया है कि यह कहना है जानकारी का एक छोटा सा:

हालांकि, जब मैं, मैं निम्न त्रुटि हमारे निर्माण मशीन पर MSBuild का उपयोग कर इसे बनाने की कोशिश पासवर्ड नहीं दिया है। लेकिन मुझे बिल्ड मशीन पर पासवर्ड देने का कोई तरीका नहीं मिल रहा है। मैंने विजुअल स्टूडियो को स्थापित करने के लिए सुझाव भी देखे हैं, और विजुअल स्टूडियो के अंदर एक बार पासवर्ड की आपूर्ति की है, और उसके बाद यह एमएसबिल्ड से काम करेगा। लेकिन मैं वास्तव में बिल्ड मशीन पर विजुअल स्टूडियो स्थापित करने से बचना चाहता हूं।

मैंने इसे आयात करने के लिए पीएफएक्स फ़ाइल को डबल क्लिक करने और पूछे जाने पर पासवर्ड डालने का प्रयास किया है, लेकिन इससे मदद नहीं मिली।

यह वही होता है यदि मैं विजुअल स्टूडियो में 'असेंबली साइन इन' की जांच करता हूं और उसी पीएफएक्स फ़ाइल की आपूर्ति करता हूं।

मैं इस समस्या को कैसे ठीक कर सकता हूं? क्या बिल्ड मशीन पर पासवर्ड संग्रहीत करने का कोई मैनुअल तरीका है?

उत्तर

6

क्या आप बिल्डिंग मशीन पर अपने विश्वसनीय प्रकाशक स्टोर में अपना प्रमाणपत्र आयात कर सकते हैं? (इंटरनेट एक्सप्लोरर> टूल्स> विकल्प> सामग्री> प्रमाणपत्र)

मैं तैनाती बनाने के लिए एमएसबिल्ड का उपयोग नहीं करता; मैं मग का उपयोग करता हूं। हालांकि, मैं अपने विश्वसनीय प्रकाशक स्टोर में हमारे प्रमाण को आयात करने के लिए हमारी .pfx फ़ाइल का उपयोग करता हूं। ऐसा करने के लिए मुझे पासवर्ड इनपुट करना होगा। ऐसा करने के बाद, जब मैं मैज में एक मैनिफेस्ट को सहेजता हूं तो मुझे अब पासवर्ड नहीं देना होगा। मैं बस अपने स्टोर से प्रमाण का चयन कर सकता हूं।

+1

मेरे विश्वसनीय प्रकाशक स्टोर में प्रमाणपत्र आयात करना मेरे लिए काम करता है। – Wilka

+0

इसके अलावा मुझे क्लिकऑन एप्लिकेशन पर हस्ताक्षर करने के लिए msbuild को निर्देश देने के लिए इस एमएसबिल्ड संपत्ति का उपयोग करना पड़ा: ** मैनिफेस्ट कर्ट्रेड थंबप्रिंट ** [... इससे मेरी मदद हुई] (http://huntjason.wordpress.com/2009/10/22/प्रकाशन-क्लिकऑन-एप्लिकेशन-टू-रन-साइड-बाय-साइड-टू-अलग-वातावरण-से-द-कमांड-लाइन-उपयोग-नेंट /) – ms007

-1

जॉन रॉबिंस कैसे MSBuild में SignTool.exe रैप करने के लिए के बारे में एक ब्लॉग पोस्ट, Code Signing – It’s Cheaper and Easier than You Thought है।

+2

जबकि यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, [यह बेहतर होगा ] (http://meta.stackexchange.com/q/8259) यहां उत्तर के आवश्यक हिस्सों को शामिल करने के लिए, और संदर्भ के लिए लिंक प्रदान करें। – Jack