c# - How to delete network executable files in use during NAnt Build -
संबंधित:
मेरे पास एक नपट स्क्रिप्ट है जो पूर्ण बिल्ड बनाता है और हमारे देव पर्यावरण के लिए तैनाती सी # नेट विन EXE और उसके उपयोग किए गए DLLs को तैनात करने से उन्हें एक नेटवर्क स्थान पर ले जाया जाता है, जहां हमारे परीक्षक और अन्य डेवलपर उन्हें चलाते हैं।
& copy; todir = "$ {dest.dir} "ओवरराइट =" सच्चे "असफलता =" गलत "& gt; & Lt; fileset basedir = "$ {source.dir}" & gt; & Lt; include name = "** / *" / & gt; & Lt; / फ़ाइलसेट & gt; & Lt; / कॉपी & gt;
अभी, स्क्रिप्ट कॉल की कार्य को कॉल करता है, ओवरराइट = "सच्चा" के साथ, लेकिन यह विफल हो जाता है कि कोई भी एप्लिकेशन चला रहा है, रिपोर्टिंग
< Strong> 'source.dll' को 'dest.dll' पर प्रतिलिपि नहीं कर सकता। पथ 'dest.dll' से प्रवेश निषेध है।
"dest.dll" मुख्य EXE की निर्भरता में से एक है, इसके साथ प्रतिलिपि बनाई गई है अभी, मुझे दो में से एक आसन है: मैं या तो पता लगाता है कि किसने इसे खोल दिया है और उन्हें छोड़ने के लिए कह रहा है, या मैं अपने सिस्टम इंजीनियरों को एक ईमेल भेजता हूं और वे लॉक फाइल को हटाने के लिए कुछ जादू करते हैं। क्या वैसे भी मैं अपने कुछ जादू की नं लिपि में शामिल कर सकता हूं, इसलिए फाइल कॉपी हमेशा सफल हो जाती है?
एक कस्टम नैन कार्य है जो पी / इनवॉइस का उपयोग करता है या फिर Win32 API के तरीकों को कॉल करने के लिए उपयोग करता है। यह कार्य अनलॉक और प्रतिलिपि संचालन को लपेट सकता है ताकि आपको नं लिपि से अपने नये कार्य को कॉल करने की आवश्यकता हो।
एक अन्य का उपयोग नॉर्ट एक्ट कार्य का उपयोग करने और एक कमांड लाइन अनलॉक उपयोगिता की कोशिश करने से पहले किया जाएगा कॉपी करें।
Comments
Post a Comment