में इसका उपयोग करने के बाद प्रबंधित डीएलएल को हटाने में असमर्थ मैं एक एएसपीनेट वेब एप्लिकेशन में एनएचनस्पेल का उपयोग कर रहा हूं। NHunspell या तो Hunspellx86.dll या Hunspellx64.dll लपेटता है, जिनमें से दोनों अप्रबंधित डीएलएस हैं।एएसपीनेट वेब एप्लिकेशन
समस्या यह है: जब मैं अपने NHunspell वस्तु (जो kernel32.dll
से FreeLibrary
कॉल) के निपटान, ऐसा लगता है कि आईआईएस अभी भी यह करने के लिए पर लटका कर रहा है - के रूप में दोनों windbg और tasklist /m
इसका सबूत। यह समस्याग्रस्त है अगर, मैं स्वचालित बिल्ड प्रक्रिया का उपयोग कर उस डीएल को प्रतिस्थापित करने का प्रयास करता हूं, या अपने वेब एप्लिकेशन को अपडेट करने के लिए इंस्टॉलर चलाता हूं: सबकुछ विफल रहता है क्योंकि वह डीएल उपयोग में है।
मुझे आश्चर्य है कि कोई भी मेरे संदेह की पुष्टि कर सकता है कि वास्तव में, आईआईएस इसे कैशिंग कर रहा है? साथ ही, मैं आईआईएस के तहत से प्रबंधित डीएलएस को क्यों हटा सकता हूं (यहां तक कि जब tasklist
आईआईएस द्वारा उपयोग किए जाने वाले डीएलएस की रिपोर्ट करता है)?
अंत में, मैं वास्तव में स्वचालित बिल्ड/इंस्टॉल के लिए इस डीएल को हटाने में सक्षम होने के बारे में सुझावों की तलाश कर रहा हूं?
बहुत बहुत धन्यवाद!
मुझे लगता है कि ओवरकिल विकल्प आपके निर्माण के उन हिस्सों के आसपास 'iisadmin/stop' और' iisadmin/start' है - यह मानते हुए कि आपका निर्माण पर्याप्त अनुमतियों के साथ चल रहा है। – Rup
क्या आपने कोशिश की है [Sysinternals Process Explorer] (http://technet.microsoft.com/en-us/sysinternals/bb896653)? आप डीएलएल नाम के लिए एक हैंडल खोज कर सकते हैं और देख सकते हैं कि डीएलएल - आईआईएस कोर सेवा या एप्लिकेशन पूल में अभी भी कौन सी प्रक्रिया हो रही है। हालांकि, यह आपको कुछ भी नया नहीं बता सकता है। – Rup
हमारे पास यह वही समस्या है। –