2009-09-08 23 views
10

मैं डायरेक्टरीइन्फो, फाइलइन्फो के साथ बहुत लंबे रास्ते के साथ काम करने का प्रयास करता हूं।डायरेक्टरीइन्फो, फाइलइन्फो और बहुत लंबा रास्ता

  • मैं कोशिश उपयोग \\ \ ग: \ लंबे पथ (मैं fileinfo और DirectoryInfo साथ अवैध caracter मिला)
  • मैं कोशिश उपयोग file: // c:/लंबे पथ (मैं uri समर्थित नहीं गया)

क्या मैं पथ या किसी अन्य चीज़ में ~ उपयोग कर सकता हूं।

मैंने यह post पढ़ा है, लेकिन मैं एक और तरीका का उपयोग करना चाहता हूं जो एपीआई को कॉल करता है। क्या यह कोई अन्य समाधान है?

माइक्रोसॉफ्ट से उपयोग के लिए एक आलेख \\ है? फ़ाइल पथ में link text

सवाल यह है कि मैं बहुत लंबे पथ के साथ काम कर सकते हैं, और DirectoryInfo, और पथ के लिए FileInfo कौन हैं और अधिक लंबे समय तक कि 256 वर्ण

उत्तर

10

Long Paths in .NETblog postseries को देखते हुए, यह करने के लिए जा तरह लग रहा है P/Invoke के माध्यम से Win32 API इस समय एकमात्र समाधान है, आपकी निर्देशिकाओं को पुनर्गठन करने के अलावा, ताकि आप सीमा को हिट न करें।

4

अतीत में इस मुद्दे को हल करने का एक तरीका डेलीमॉन से लाइब्रेरी का उपयोग कर रहा था जिसे Delimon.Win32.IO कहा जाता है। ऐसा लगता है कि इस समय उनकी साइट http://www.delimon.be नीचे है। लेकिन मैंने इसे अतीत में एक परियोजना पर इस्तेमाल किया था और यह एक चैंप की तरह काम करता था। मैं इस शाम के बाद इसे आपके लिए ट्रैक करने का प्रयास कर सकता हूं या Google के माध्यम से कहीं भी इसके लिए एक वैध लिंक खोजने का प्रयास कर सकता हूं। चीयर्स। इस मुद्दे पर चर्चा करने के बारे में बात करने वाला एक और लिंक यहां दिया गया है।

http://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/2541a9b9-acd7-4338-89b1-dfc0408e41b5

11

लायब्रेरी फिर on this location.

This is a .NET Library .NET फ्रेमवर्क 2.0 के खिलाफ लिखा गया है और एक .NET अनुप्रयोग से पहुँच बहुत लंबे फ़ोल्डर और फ़ाइलों के लिए इस्तेमाल किया जा सकता उपलब्ध है।

के बाद से .नेट फ्रेमवर्क :-(लंबे फ़ाइल नामों का समर्थन नहीं करता मैं एक पुस्तकालय है कि Win32 एपीआई कॉल और System.IO की तरह उन कार्यों लपेटता लिखना पड़ा। हालांकि यह System.IO यह होता है की एक पूरी प्रतिकृति नहीं है सबसे वस्तुओं और उपलब्ध कार्य हैं।

Delimon.Win32.IO लंबे पथ नाम के साथ System.IO के बुनियादी फ़ाइल कार्यों की जगह 32,767 वर्ण तो अलविदा अलविदा MAX_PATH समस्या

अप करने के लिए पात्रों के लिए समर्थन 10

क्या आपने कभी इस समस्या में भाग लिया था?

System.IO.PathTooLongException अनचाहे था।

संदेश:

निर्दिष्ट पथ, फ़ाइल नाम, या दोनों बहुत लंबे हैं। पूरी तरह से योग्य फ़ाइल नाम 260 वर्णों से कम होना चाहिए, और निर्देशिका नाम 248 वर्णों से कम होना चाहिए।

5

Delimon.Win32.I​O Library (V4.0) यह .NET फ्रेमवर्क 4.0 के खिलाफ लिखा है और या तो 86 & 64 सिस्टम पर इस्तेमाल किया जा सकता भी उपलब्ध है।

1

.NET 4.6.2 के रूप में, इस समस्या को स्थानीय मशीन की समूह नीति में परिवर्तन के साथ हल किया जा सकता है, जो Win 10+ और Server 2016+ पर लंबे पथों की अनुमति देता है।

परीक्षण और पुष्टि की गई।

https://blogs.msdn.microsoft.com/jeremykuhne/2016/07/30/net-4-6-2-and-long-paths-on-windows-10/