Sadece bir numaradan bahsediyorum, henüz burada bahsettiğimi görmedim.
Örneğin bu dosyayı alın:
C:\Folder1\Really Long Path\Such Recursion\So Deep\Wow\Still Going\I will run out of ideas soon\I have organizational problems\Obsessive compulsive subdirectory disorder\Here is a guid for no good reason\936DA01F-9ABD-4d9d-80C7-02AF85C822A8\Almost there\Tax Returns\2013\2013_tax_return.pdf
Bu tam dosya yolu 290 karakter uzunluğundadır. Kabuk (Windows Gezgini) ve çoğu komut satırı yardımcı programı muhtemelen dokunmanıza izin vermez.
Bu subst
komutu aşağıdaki gibi kullanın :
subst X: "C:\Folder1\Really Long Path\Such Recursion\So Deep\Wow"
Artık dosyaya erişebilir (ve silebilir, taşıyabilir, vb.):
X:\Still Going\I will run out of ideas soon\I have organizational problems\Obsessive compulsive subdirectory disorder\Here is a guid for no good reason\936DA01F-9ABD-4d9d-80C7-02AF85C822A8\Almost there\Tax Returns\2013\2013_tax_return.pdf
Ve şimdi bu dosya adı yalnızca ~ 235 karakterdir, yani "Dosya adı çok uzun" sorunlarıyla daha fazla karşılaşmazsınız.
Windows API'sinde, olarak bilinen rezil bir sabit var MAX_PATH
. MAX_PATH 260 karakterdir. NTFS dosya sistemi aslında 32.767 karaktere kadar olan dosya yollarını destekler. Ayrıca, Windows API işlevlerinin Unicode (veya "geniş") sürümlerine erişerek ve ayrıca yolu ön ekleyerek yine 32.767 karakter uzunluğunda yol adları kullanabilirsiniz \\?\
.
MAX_PATH
Windows dünyasında çok uzun zaman önce taştan yapılmıştır . Bence o zaman ANSI standartları ile ilgisi var ... ama Microsoft'un şu anda değiştirmesi çok zor olan şeylerden biri, şimdi de Microsoft tarafından yazılmış binlerce program ve uygulama kullandık. MAX_PATH
ve eğer sabit birden bire değişmiş olsaydı garip yeni yollarla başarısızlığa uğrayacaktı. (Arabellek taşması, yığın bozulması vb.)