फ़ाइल की प्रतिलिपि बनाने में असमर्थ - पथ तक पहुंच अस्वीकृत है


238

मैं Visual Studio 2005 का उपयोग कर रहा हूं। पहले संस्करण नियंत्रण से कोड लेने के बाद, c # .net एप्लिकेशन सही ढंग से चलता है। लेकिन, कुछ संशोधनों के बाद, जब मैं निर्माण करता हूं तो मुझे निम्नलिखित त्रुटि मिल रही है:

383 त्रुटि फ़ाइल की प्रतिलिपि बनाने में असमर्थ ".. \" रूट \ पत्ती \ बिन \ "डिबग \ परीक्षण"। स्रोत "एक्सएमएल" से "बिन \ डीबग \ परीक्षण। स्रोत। एक्सएमएल"। पथ 'Bin \ Debug \ test .esource.xml' तक पहुँच अस्वीकृत है। li.rollmodel

क्या किसी को पता है कि यह मुद्दा क्यों हो रहा है?

संपादित करें मैं देख सकता हूं कि मेरा संपूर्ण प्रोजेक्ट स्रोत कोड फ़ोल्डर केवल-पढ़ने के लिए है, और मैं केवल-पढ़ने के लिए गुण को निकालने में सक्षम नहीं हूं।

सबसे पहले, क्या कोई मुझे बता सकता है कि इस फ़ोल्डर के लिए केवल-पढ़ने के लिए संपत्ति कैसे निकालें? मैंने इसे हटाने की कोशिश की है लेकिन केवल पढ़ने के लिए संपत्ति बनी रहती है। मैंने संस्करण-नियंत्रण पक्ष से भी कोशिश की और यह भी काम नहीं किया।


क्या यह नेटवर्क शेयर पर है? क्या आपकी मशीन पर प्रशासनिक पहुंच है? यह प्रश्न सर्वरफ़ॉल्ट या सुपरयूज़र पर एक बेहतर फिट हो सकता है।
अरुणकुमार

नहीं, मैं अपनी खुद की मशीन का उपयोग कर रहा हूं मेरे पास प्रशासनिक पहुंच है
ricky

मैंने उस समस्या को मैन्युअल रूप से फ़ाइल को एक स्थान से आवश्यक स्थान पर कॉपी करके हल किया, संभवतः यह समस्या MSBUILD से संबंधित है आसानी से फ़ाइल के साथ
ricky

जवाबों:


277

मैं बिन फ़ोल्डर से विवादास्पद फ़ाइलों को हटाने और परियोजना के पुनर्निर्माण के द्वारा इस समस्या को हल किया।


50
पुरानी पोस्ट, मुझे पता है, लेकिन मेरे पास अभी भी यही मुद्दा था। सुनिश्चित करें कि VS भी बंद है क्योंकि यह कुछ मामलों में फ़ोल्डर को हटाने के लिए पहुंच से इनकार करेगा
Eon

1
थोड़ा ध्यान दें: मुझे समझ नहीं आया, पहली बार में, मुझे इन फ़ाइलों को मुख्य प्रोजेक्ट के आउटपुट फ़ोल्डर में डिलीट करना है, न कि dll के आउटपुट फ़ोल्डर में। तो, यहाँ चेतावनी :)
पिएरो अल्बर्टो

6
मेरे मामले में, यहां तक ​​कि वीएस को बंद करना भी फ़ोल्डर को मुक्त करने और मुझे इसे हटाने की अनुमति देने के लिए पर्याप्त नहीं था - ProcessExplorer ने दिखाया कि "VBCSCompiler.exe" अभी भी इसका उपयोग कर रहा था। इस मामले में, विंडोज और (या सिर्फ प्रक्रिया को मारना) में साइन आउट करने ने चाल चली, जिससे मुझे समाधान का पुनर्निर्माण करने और फिर से सब कुछ प्राप्त करने की अनुमति मिली।
एस। जेन्सन

2
मेरे मामले में यह कारण है कि फ़ोल्डर और समाधान ReadOnly में बदल गया और बाद में VS को इसे बनाने में परेशानी हुई, ऐसा इसलिए था क्योंकि कुछ फ़ाइल GoogleDrive को सिंक्रोनाइज़ करने में विफल रही और किसी तरह उस प्रक्रिया से लॉक हो गई। तो मेरे लिए ठीक से पुनर्निर्माण करने के लिए मुझे GoogleDrive को बंद करना पड़ा और फिर इसे ठीक बनाया गया।
कोनराड

1
मुझे अपराधी के रूप में बिटडेफ़ेंडर एंटीवायरस फ्री मिला।
वार्विक

123

बस सुनिश्चित करें कि फ़ोल्डर रीड-ओनली नहीं है और समाधान का पुनर्निर्माण करें


12
मैं हरे रंग से भरे 'केवल पढ़ने के लिए' चेकबॉक्स को हटाने की कोशिश कर रहा हूं। जब मैं 'लागू करें' और फिर 'ठीक है' पर क्लिक करता हूं, और फिर उस फ़ोल्डर के गुणों को फिर से जांचता हूं, तो मैं फिर से पिछली स्थिति में देख सकता हूं (फिर से 'केवल पढ़ने के लिए' चेकबॉक्स जिसमें हरा रंग होता है)। किसी को भी इस पर समाधान?
विक्रम

इसके अलावा, सुनिश्चित करें कि फ़ाइल लॉक नहीं है। मेरे मामले में, फ़ाइल एक शेयर पर थी और किसी और के पास थी।
डैन बेचर

केवल विशेषता पढ़ने से पहले दृश्य स्टूडियो को बंद करें। क्योंकि विचाराधीन फ़ाइल उपयोग में हो सकती है (बंद)
गौतम जैन

4
ReadOnly और Dlls की छिपी विशेषता को साफ़ करने के लिए एक विजुअल स्टूडियो एक्सटेंशन बनाया गया जो बिल्ड को ब्लॉक कर रहा है। UnBlockDllExtension: marketplace.visualstudio.com/…
vrnithinkumar

69

मैंने इस समस्या को हल किया: विज़ुअल स्टूडियो को बंद करें, इसे फिर से खोलें और समाधान को लोड करें, अपने समाधान का पुनर्निर्माण करें। मेरी समस्या TFS और VIsual Studio 2010 का उपयोग करके हुई।


22
VS2013 में एक ही मुद्दा जोड़ें। आईटी भीड़ का क्लासिक मामला। "नमस्ते यह आईटी है, क्या आपने इसे बंद करने की कोशिश की है और फिर से?"।
मैक्सिमे रूइलर

1
समान परिदृश्य: TFS और VS 2010। एक ही समस्या। वही उपाय। +1
अजेह

2
यह VS2015 के साथ ही हुआ: p
Yoo Matsuo

4
और में VS2017 एक ही
arame3333

1
मैं पहले से ही इसे ठीक करने की कोशिश में पागल हो गया, अच्छी पुरानी पद्धति को बदल दिया अगर कुछ काम नहीं करता है, तो इसे रिबूट करें, ठीक काम किया
Mykhailo Seniutovych

50

मार डालो प्रक्रिया VBCSCompiler.exeऔर पुनर्निर्माण।


3
यही मेरे लिए इसका हल है। धन्यवाद दयालु व्यक्ति: D
मोरस

हाँ, यह बात है।
काल कोक

बहुत-बहुत धन्यवाद, आप अजनबी हैं! : D
Agent007

कुछ समय के लिए यह मेरे लिए हमेशा काम किया, मुझे कहना होगा कि यह इस समस्या का एक हिस्सा हल करेगा कुछ और भी है जो इस मुद्दे को पैदा कर रहा है
अमित बिष्ट

यह भी कोशिश करो यह आपकी मदद कर सकता है stackoverflow.com/a/12740768/2445111
अमित बिष्ट

23

मैंने इस समस्या में भी कदम रखा।

सबसे पहले जाकर देखें कि क्या आपने अपने बिन और ओबज फोल्डर को सोर्स कंट्रोल प्रोग्राम में मैप किया है।

यह आपकी फ़ाइलों को बायनेरी फोल्डर से केवल अभिलेखागार में पढ़ने के लिए बदल सकता है, जो कोड को संकलित करने पर उन्हें अधिलेखित करने के लिए दृश्य स्टूडियो को असंभव बनाता है।

जाओ और इन फ़ोल्डरों से मैपिंग को हटा दें, परिवर्तनों की जांच करें और फिर से प्रयास करें।

मेरी समस्या TFS (टीम फाउंडेशन सर्वर) और विज़ुअल स्टूडियो 2010 का उपयोग करके हुई।

आशा है कि यह किसी की मदद करता है।


1
मैं बस यह जोड़ना चाहता था कि हेइटेरोल्केर्ट के जवाब ने मेरी समस्या को ठीक कर दिया है और यह विजुअल स्टूडियो 2012 और टीएफएस2010 के साथ हो सकता है।
रॉडने

20

अपने विजुअल स्टूडियो को प्रशासक के रूप में चलाएं


1
नोट: यहाँ एक छोटा और आसान तरीका करने के लिए डिफ़ॉल्ट रूप से हमेशा व्यवस्थापक के रूप में चलाया जाता है stackoverflow.com/questions/12257110/...
wmebane

इस जवाब ने मुझे काफी बताया कि मैं अपने आउटपुट फ़ोल्डर पर "उपयोगकर्ता" को लिखने की अनुमति देना जानता था - और उसने तुरंत मेरी समस्या हल कर दी (जो कि मैं पहली बार भी प्रकाशित नहीं कर सका)।
एक्स

9

मैं Visual Studio 2013 का उपयोग करता हूं। मैंने इस समस्या का 2 बार सामना किया:

  1. पहले अवसर पर, मैं प्रशासक अधिकारों के बिना विज़ुअल स्टूडियो चला रहा था। इसलिए, मैंने वीएस को बंद कर दिया और इसे ' रन एज़ एडमिनिस्ट्रेटर ' विकल्प का उपयोग करके शुरू किया । इससे मेरी समस्या हल हो गई।

  2. दूसरे अवसर पर, मैंने वीएस को कई बार फिर से शुरू किया, हर बार यह सुनिश्चित करते हुए कि मैं इसे एक प्रशासक के रूप में चला रहा हूं। इसके अलावा, मैंने कई बार समाधान का पुनर्निर्माण किया। लेकिन, इसके बावजूद मुझे त्रुटि हो रही थी। उसके बाद, मैंने संबंधित फ़ाइल को लक्ष्य स्थान से हटा दिया (फ़ाइल पहले से मौजूद थी वह उस स्थान पर पिछले बिल्ड से हो सकती है जहां वह प्रतिलिपि बनाने की कोशिश करता है) और समाधान को फिर से बनाता है । उसके बाद, त्रुटि दूर हो गई और सब कुछ सुचारू रूप से चला!



7

यह विजुअल स्टूडियो 2017 में फिर से शीर्ष पर पहुंच गया है, इस मामले में इसका कारण अनुप्रयोग अंतर्दृष्टि प्रक्रिया ServiceHub.DataWarehouseHost.exe है।

MSB3026 थ्रेड चेतावनी में चर्चा की गई वर्कअराउंड है : "बिन \ डीबग \ netcoreapp1.1 \ src.db" के लिए "obj \ Debug \ netcoreapp1.1 \ src.pdb" को कॉपी नहीं किया जा सकता है , जो पूर्व-बिल्ड को जोड़ना है हर बार परियोजना के निर्माण की प्रक्रिया को मारने के लिए परियोजना का आयोजन। उस लिंक से उद्धरण:

  • प्रोजेक्ट पर राइट क्लिक प्रॉपर्टीज
  • गुण चुनें
  • घटनाओं का निर्माण
  • पूर्व-निर्माण इवेंट कमांड लाइन
taskkill /IM ServiceHub.DataWarehouseHost.exe /F 2>nul 1>nul
Exit 0
  • सहेजें और बनाएँ

6

क्या कोई निकाय जान सकता है कि यह मुद्दा क्यों आ रहा है?

आपकी प्रतिक्रिया को देखते हुए कि आपने मैनुअल कॉपी करके अपनी समस्या का समाधान किया है, मैं कहूंगा कि जिस कोड पर आप काम कर रहे थे वह किसी अन्य उपयोगकर्ता (व्यवस्थापक विशेषाधिकारों के साथ भी) द्वारा बनाया गया था, इसलिए यह आपके लिए लॉक था। कॉपी लेकर -? पेस्ट करें, आपने अपनी आवश्यक सभी पहुंच के साथ स्रोत की अपनी स्वयं की प्रतिलिपि बनाई। ध्यान देने वाली बात केवल यह है कि इस मामले में, यदि इस अन्य डेवलपर को आपकी कॉपी पर काम करने की आवश्यकता होगी, तो वह आपके द्वारा पहले प्राप्त की गई बहुत ही समस्या में कूद जाएगा।


6

सबसे पहले फाइल की लोकेशन पर जाएं। फिर फाइल के फोल्डर पर राइट क्लिक करें -> प्रॉपर्टीज -> अनचेक रीड ओनली ऑप्शन और फाइल्स और उसके सब फोल्डर पर अप्लाई करें। इसने मेरी समस्या हल कर दी। हैप्पी कोडिंग!


3

मैंने अपने सभी गैर-नेट निर्भरता / संदर्भों को फिर से जोड़ा और इसने चाल चली।


3

मैंने खुद इस मुद्दे को सुलझाया। समस्या यह थी कि मेरे पास दूसरी जगह इसका समाधान था। इसे बंद करने के बाद यह काम करता है


मैंने भी यही किया। हमेशा स्पष्ट आसान सामान को पहले जांचें, मेरी मंजिल एक नेटवर्क ड्राइव पर थी, क्योंकि मैं किसी अन्य मशीन पर डिबगिंग कर रहा था।
सिमोन अनसवर्थ

3

एक ही समस्या थी, लेकिन हर बार विजुअल स्टूडियो को फिर से शुरू करना मेरे लिए कोई विकल्प नहीं था , क्योंकि मुद्दा कभी-कभी बहुत बार होता है।

मैंने इसे Unlocker स्थापित करके ( संस्थापन में किसी भी टूलबार को स्थापित करने की कोशिश करता है, इसलिए इसे अनचेक करना न भूलें ), यह एप्लिकेशन मुझे एक लॉक ".xml" -File का नाम बदलने / हटाने के लिए तेज़ एक्सेस देता है । मुझे पता है कि यह केवल एक समाधान है, लेकिन मेरे लिए यह इस समस्या को हल करने का सबसे तेज़ समाधान था।


इसके लिए धन्यवाद। मुझे पिछले वर्ष के लिए यह समस्या थी और मुझे लगा कि मैं प्रशासक के बीच स्विच करूंगा और नहीं, लेकिन अब मुझे पता है कि यह एक बेवकूफ पांडा एंटीवायरस से संबंधित महत्वपूर्ण प्रक्रिया है (PSANHost.exe, टास्क मैनेजर में मौजूद नहीं है) जो बंद है फ़ाइलें।
yeejuto

3

पुरानी पोस्ट, लेकिन यह ज़ोंबी वीएस 2017 को मार रहा है (मैंने यह नहीं सोचा है कि यह सिर्फ "कुछ" परियोजनाएं हैं)। इस स्थिति में, यह उपयोगकर्ता की अनुमति नहीं है , बल्कि IIS एक्सप्रेस प्रक्रिया अभी भी फ़ाइलों का उपयोग कर रही है।

आपको अपने कार्य ट्रे में आइकन दिखाई देगा IIS एक्सप्रेस आइकन

  1. दाएँ क्लिक करें
  2. बाहर जाएं
  3. आपको rebuildइस कष्टप्रद "अनुमति अस्वीकृत" संदेश के बिना सक्षम होना चाहिए ।

यह भी क्यों "Visual Studio को पुनरारंभ करना" समस्या को "ठीक" करेगा। ऐसा करने से IIS एक्सप्रेस बंद हो जाती है।

HTH ...


2

मैंने इस समस्या को तब बनाया जब मैंने समाधान के लिए एक नया सेटअप प्रोजेक्ट जोड़ा, और फिर सेटअप प्रोजेक्ट के एप्लिकेशन फ़ाइलों फ़ोल्डर में मुख्य एप्लिकेशन प्रोजेक्ट के / बिन / रिलीज़ फ़ोल्डर से सीधे फाइलें जोड़ दीं। सेटअप प्रोजेक्ट का स्रोत नियंत्रण मुझे मुख्य एप्लिकेशन प्रोजेक्ट का निर्माण पूरा करने से लगातार रोक रहा था।

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


2

यदि आप किसी भी फाइल को किसी समाधान में कॉपी करते हैं, तो सुनिश्चित करें कि फाइलें रीड ओनली मोड में नहीं हैं। फ़ाइल पर राइट क्लिक करें और मेरी समस्या हल की विशेषता विकल्प को अनचेक करें।


2

मेरे पास एक ही त्रुटि थी लेकिन मैं Perforce संस्करण नियंत्रण का उपयोग कर रहा हूं । यहां मैंने इसे कैसे तय किया।

  1. बंद हुआ Pforce P4V क्लाइंट
  2. पुनः आरंभ किया गया दृश्य स्टूडियो 2010 (आवश्यक नहीं हो सकता है)
  3. परियोजना का पुनर्निर्माण किया, जो सफल रहा
  4. एक ही समय में असाधारण रूप से खुश और निराश महसूस किया

1
मेरे पास एक ही सेटअप है, लेकिन चरण 3 और 4 में नहीं मिल सकता है :(
user3260977

2

मुझे भी यही समस्या थी। मुझे त्रुटि संदेश मिला है जो संबंधित नहीं हो सकता है क्योंकि पथ का उपयोग करने से इनकार नहीं किया जा सकता है। मेरे मामले में मेरे सभी dll और xml फ़ाइलें और इसी तरह D: \ TFS \ Example \ Bin \ Debug फ़ोल्डर में हैं।

मैंने बिन फ़ोल्डर पर राइट क्लिक किया और प्रॉपर्टीज़ पर क्लिक किया और देखा कि विशेषताएँ के तहत रीड-ओनली चेक बॉक्स की जाँच की गई है।

मैंने अन-चेक किया, केवल चेक बॉक्स पढ़ें और लागू करें और दिखाए गए नए पॉपअप पर ओके क्लिक करें।

मैं विज़ुअल स्टूडियो में वापस गया और अपने समाधान का निर्माण किया जो मुझे त्रुटि संदेश दे रहा था।

वोइला .. इस बार यह बिना त्रुटियों के सफलतापूर्वक निर्माण करता है।

मुझे पता नहीं है कि क्या यह सही है लेकिन मैंने अपने मुद्दे को हल करने के लिए ऐसा किया।


2

कार्य प्रबंधक की जाँच करें और सुनिश्चित करें कि आपके पास एक devenv.exe प्रक्रिया लटका नहीं है। भगोड़ा प्रक्रिया को मार डालो और फिर से प्रयास करें।



1

मैं इसका एक पुराना सूत्र जानता हूं, लेकिन उत्तर की तलाश करने वालों के लिए, कुछ मिनट पहले की तरह, मैं पहले आपके कंप्यूटर को फिर से शुरू करने की कोशिश कर रहा हूं। मेरे लिए वही तय है। इससे पहले फ़ोल्डर में मैनुअल कॉपी भी नहीं कर सकते थे।


1
मेरी भी मदद की। 2020 गिरोह
विटोर Ceolin

1

बस अपने MVC प्रोजेक्ट पर राइट क्लिक करें और क्लीन ऑप्शन पर क्लिक करें। मेरे पास एक समान समस्या थी और पुनर्निर्माण से पहले इस परियोजना को साफ करना मेरे लिए इसे हल कर दिया।


1

मेरी भी यही समस्या थी। मैंने रूट फ़ोल्डर के रीड-ओनली गुणों को अनचेक करके इसे ठीक किया।


कभी-कभी समाधान भी उतना ही सरल और स्पष्ट होता है। अपने सिर को पीटने और जटिल और अंतहीन प्रक्रियाओं के आसपास काम करने के बजाय, बस इस प्रकार की सरल संभावनाओं की जांच करें और आपका जीवन बहुत आसान हो जाएगा। मैं विशेषज्ञों के ऐसे विशाल समुदाय के साथ हमें प्रदान करने के लिए StackOverflow का आभारी हूं जो हमें हताश क्षणों में आवश्यक सहायता प्रदान कर सकता है।
चौधरी सादमान महमिद

1

मेरा भी यह मुद्दा था। यहां इसका समाधान कैसे किया गया है

  • binफ़ोल्डर को प्रोजेक्ट से बाहर निकालें ।
  • दृश्य स्टूडियो बंद करें।
  • C ड्राइव का डिस्क क्लीनअप।
  • दृश्य स्टूडियो में फिर से ओपन प्रोजेक्ट।
  • और फिर समाधान का पुनर्निर्माण करें।
  • प्रोजेक्ट चलाएं।

यह प्रक्रिया मेरे लिए काम करती है।



1

मैं लक्ष्य वेब साइट के बिन फ़ोल्डर से शिकायत फ़ाइल (जो आपके उदाहरण में "बिन \ डीबग \ परीक्षण.सो.स. मि.से.") को हटाकर समस्या को हल करने में सक्षम था और इसे फिर से बनाता हूं। यह मेरे लिए तय किया।


1

1) दृश्य स्टूडियो समाधान बंद करें

2) कमांड प्रॉम्प्ट पर नेविगेट करें -> व्यवस्थापक के रूप में चलाएँ -> iisreset / stop

3) c -> विंडोज -> Microsoft.Net -> फ्रेमवर्क64 -> v4.030319 -> अस्थाई Asp.NET फ़ाइलों पर नेविगेट करें -> इस पथ में सभी फ़ाइलों और फ़ोल्डरों को हटा दें।

4) कमांड प्रॉम्प्ट पर वापस जाएं -> iisreset / start

5) अब दृश्य स्टूडियो खोलें -> व्यवस्थापक के रूप में चलाएं -> समाधान को साफ करें और इसका निर्माण करें (पुन: निर्माण न करें..मेरे लिए निर्मित निर्माण)


0

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

मैं उपयोग करने के बजाय सुझाव Environment.CurrectDirectoryदेता हूं (जो मुझे लगता है कि आप वर्तमान में उपयोग कर रहे हैं), आप "MyProjectName" नाम का एक फ़ोल्डर% appdata% पते में बनाते हैं और फिर उपयोग करते हैं:

System.IO.Path.Combine(Environment.GetEnvironmentVariable("appdata"),"YourProjectName")


0

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

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