2012-01-27 14 views
5

एमएसडीएन बताता है कि gacutil.exe is not safe to use for production servers। क्या इसके लिए कोई वैध कारण है या माइक्रोसॉफ्ट सिर्फ थोड़ा सीवाईए का अभ्यास कर रहा है? क्या यह चेतावनी अनदेखा करने के लिए सुरक्षित है? या मुझे अंततः माइक्रोसॉफ्ट विंडोज इंस्टालर 2.0 का उपयोग करने के तरीके सीखना चाहिए?gacutil.exe के साथ उत्पादन असेंबली स्थापित करने के लिए सुरक्षित?

MSDN के सटीक शब्द:

Gacutil.exe विकास प्रयोजनों के लिए ही है और वैश्विक विधानसभा कैश में उत्पादन विधानसभाओं स्थापित करने के लिए नहीं किया जाना चाहिए।

+0

"सुरक्षित नहीं"? वह शब्द कहां दिखाई देता है? –

+0

क्षमा करें। मुझे लगता है कि मैं थोड़ा सा झुका रहा था। यह कहा गया है कि यह केवल विकास के उद्देश्यों के लिए है। एमएसडीएन भाषा जोड़ा गया। – Jeff

+0

ठीक है, बेहतर। बस यह सत्यापित करना चाहता था कि उसने क्या कहा है, और भविष्य के पाठकों को भ्रमित नहीं किया है। :) –

उत्तर

5

वैश्विक असेंबली कैश में आइटम प्रोग्रामों में साझा किए जाते हैं।

जब आप कैश में असेंबली जोड़ने के लिए गैकुटिल का उपयोग करते हैं, तो उस पर निर्भर वस्तुओं की कोई संदर्भ गणना नहीं होगी। इसलिए, यह संभव है कि जब आप कैश से अपनी लाइब्रेरी को निकालने के लिए GacUtil/U का उपयोग करते हैं, तो आप उस पर निर्भर अन्य प्रोग्राम तोड़ देंगे।

इसके विपरीत, विंडोज इंस्टालर 2.0 एक गिनती रखता है और असेंबली कैश से केवल पुस्तकालयों को हटा देगा जब किसी अन्य प्रोग्राम को इसकी आवश्यकता नहीं होती है।

+0

इस उत्तर ने तकनीकी रूप से हंस से बेहतर मेरे प्रश्न का उत्तर दिया (भले ही हंस ने प्रश्न में पढ़ा और उस तरह सहायक था)। धन्यवाद! – Jeff

3

ऐसा इसलिए है क्योंकि gacutil.exe लक्ष्य मशीन पर उपलब्ध नहीं होगा। यह विंडोज एसडीके का हिस्सा है, इसका .NET 4.0 संस्करण सी: \ प्रोग्राम फ़ाइलें (x86) \ माइक्रोसॉफ्ट एसडीके \ विंडोज \ v7.0A \ Bin \ NETFX 4.0 टूल्स में स्थित है। आपके पास यह आपकी मशीन पर है क्योंकि आपने विजुअल स्टूडियो स्थापित किया है।

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

+0

एक और अच्छा मुद्दा। मैंने इसके बारे में सोचा नहीं था, लेकिन यह वीएस के साथ स्थापित हो गया है, है ना? –

+0

मुझे पता है कि यह उत्पादन मशीन पर नहीं था, लेकिन चूंकि खोल विस्तार मुझे परेशानी दे रहा है, मैंने सोचा कि मैं इसे कॉपी कर सकता हूं। – Jeff

+1

शैल एक्सटेंशन अब .NET 4 में उपलब्ध नहीं है। यह भी सावधान रहें कि जीएसी c: \ windows \ assembly से c: \ windows \ microsoft.net \ assembly में स्थानांतरित हो गया है। –

संबंधित मुद्दे