Windows 7, 255 Karakter Dosya Yolu Sınırını Düzeltti mi?


92

Anladığım kadarıyla, bir dosya yolundaki 255 karakter sınırlaması bir Windows sınırlamasıdır. Bunun nedeni nedir? Öyleyse, bu Windows 7'de çözüldü mü?

Sürekli entegrasyon uygulamalarımızda, genellikle derinlemesine iç içe geçmiş proje yapılarına sahibiz ve 255 karakterin ötesine geçebilmek son derece faydalı olacaktır. Şu anda projelerimizi bu yapay tavana çarpmayacak şekilde yapılandırmak zorunda kalıyoruz.


3
@DavidHeffernan Ancak bu 260, sonunda boş karakter ve başında `C: \ 'içerir, bu nedenle yalnızca 255 karakter kullanılabilir.
Aaron Dufour

2
@DavidHeffernan Yanılmışım. Microsoft, uzunluğu teknik olarak sınır olan 260 yerine genellikle 256 olarak alıntılar.
Aaron Dufour

5
Bu sorun beni çileden çıkarıyor. Hala 8.1 pencerelerinde mevcuttur. Dosya ilk etapta BOMEHOW oluşturulmuş olsa bile dosyalarımı hareket ettiremiyorum. 255+ dosya yolu adıyla dosya oluşturmanın bir yolunu bulursanız, birinin Windows makinesini tamamen bozabilirsiniz.
Automatico

Jeremy Kuhne'ye göre sorun çözülüyor ve yakında bir çözümü olabilir. Bu videoya bak. youtube.com/watch?v=ZppqEMegCAA
J Edward Ellis

Soru Windows 7 ile ilgili, ancak yine de, Windows 10'un bazı uygulamalar için uzun yolları açma seçeneği var. Daha fazla ayrıntı için şu yanıtı kontrol edin: stackoverflow.com/questions/27680647/…
quasoft

Yanıtlar:


44

Bkz. Http://msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx

Bu, Windows API'lerinin Unicode sürümlerinin daha yüksek sınırlara sahip olduğunu ve bunun nasıl etkinleştirileceğini açıklar.


14
Ancak bir uyarı: Daha uzun yollarla iyi oynamayan bir sürü kod (çoğunlukla 3. taraf sistem araçları ve benzeri) var. Daha uzun yolları kullanmaya başlarsanız, bununla ilgili sorunlarınız olabilir.
ReinstateMonica Larry Osterman

2
Bu makale doğru mu? Windows 7'de hem Windows Gezgini hem de Windows Komut İstemi ile basit bir test yaptım ve 260 karakterden fazla dosya yolları oluşturamıyorum. Microsoft bu uygulamaları Windows API'lerinin Unicode sürümlerini kullanacak şekilde güncellemedi mi?
Templar

7
Ne yazık ki Windows 7 x64 üzerinde Windows Gezgini hala bu yol sınırına tabidir. Bu, daha uzun yollarla çalışmak üzere güncellenmemiş olan yalnızca Windows Gezgini olduğunda, tüm işletim sisteminin bu sınırı aşmadığı izlenimini verir. En son API'leri kullanan bir 3. taraf dosya yöneticisinin bunu aşması mümkündür. Nihayetinde, bir programın yol sınırına ulaşıp ulaşmadığı, o programın Windows'daki en yeni API'leri kullanıp kullanmadığına bağlı olacaktır.
user1445967

2
Bu, "daha yeni" veya "eski" API'ler meselesi değildir. Uzun yol desteğini yalnızca açık bir şekilde isterseniz alırsınız ve Explorer, muhtemelen bariz bir nedenden ötürü bunu yapmaz: mevcut üçüncü taraf uygulamalarıyla uyumluluk.
Harry Johnston

9
-1 - Potansiyel bir çözüme bağlantı her zaman memnuniyetle karşılanır, ancak lütfen bağlantının etrafına bağlam ekleyin, böylece kullanıcı arkadaşlarınız bunun ne olduğu ve neden orada olduğu konusunda fikir sahibi olur. Hedef sitenin erişilemez olması veya kalıcı olarak çevrimdışı olması durumunda, her zaman önemli bir bağlantının en alakalı kısmını alıntılayın. meta.stackoverflow.com/tags/link-only-answers/info
Aaron Hall

20

Gerekirse alt sınırı kullanarak bu sınırı aşabilirsiniz.



1
Veya bu yanıta dayalı olarak Windows'ta yerleşik olan robocopy, stackoverflow.com/questions/29865863/…
KAE

5
Nasıl olduğunu göstermeli ve ilgili belgelere bir bağlantı sağlamalısınız. -1
Aaron Hall

3
Ek oy verirken, bir örneğin faydalı olacağına katılıyorum: subst E: D:\TESTDATA\4B871B~1\4B871B~1\4B871B~1\4B871B~1\4B871B~1\4B871B~1\4B871B~1\4B871B~1\4B871B~1\4B871B~1\4B871B~1\4B871B~1\4B871B~1\4B871B~1\4B871B~1 Bu beni 500 karakter derinliğinde bir yolun etrafından dolaştırdı. ~ 1'lerin nedeni, Explorer'ın yolu biçimlendirmesidir.
Adam Marcionek

1
Benzer bir çözüm , bir kabuk uzantısı veya mklink aracılığıyla kavşaklar kullanmak olabilir. Örnek:mklink /J C:\newdir C:\some\really\long\path\
Charles Grunwald

14

Geçici çözümler çözüm değildir, bu nedenle yanıt "Hayır" dır .

Yine de geçici çözümler arıyor, olası çözümleri burada bulabilirsiniz: http://support.code42.com/CrashPlan/Latest/Trfunction/Windows_File_Paths_Longer_Than_255_Characters


1
Powershell, windows explorer shell ve del gibi cmd yardımcı programları dahil olmak üzere pencerelerin temel öğeleri 250 karakteri aşan yolları işleyemez ve hiçbir geçici çözüm, temel Microsoft teknolojilerinin 2016 itibarıyla uzun yolları işlemediği gerçeğini düzeltmez. Kısa yanıt burada. Microsoft kolektif olarak gerisini toparlayana kadar yapabileceğimiz çok az şey var.
Warren P


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.