Windows 7 ได้แก้ไขขีด จำกัด เส้นทางไฟล์ 255 อักขระแล้วหรือยัง


92

ตามที่ฉันเข้าใจข้อ จำกัด ของ 255 อักขระในเส้นทางไฟล์เป็นข้อ จำกัด ของ Windows เหตุผลนี้คืออะไร? ถ้าเป็นเช่นนั้นสิ่งนี้ได้รับการแก้ไขแล้วใน Windows 7 หรือไม่

ในแนวทางปฏิบัติการผสานรวมอย่างต่อเนื่องของเราเรามักจะมีโครงสร้างโครงการที่ซ้อนกันอยู่ลึก ๆ และจะเป็นประโยชน์อย่างยิ่งที่จะสามารถใช้อักขระเกิน 255 ตอนนี้เราค่อนข้างถูกบังคับให้วางโครงสร้างโครงการของเราเพื่อไม่ให้ชนเพดานเทียมนี้


3
@DavidHeffernan แต่ 260 นั้นมีอักขระ null ที่ท้ายและ `C: \` ที่จุดเริ่มต้นดังนั้นจึงใช้ได้เพียง 255 อักขระเท่านั้น
Aaron Dufour

2
@DavidHeffernan ฉันเข้าใจผิด Microsoft มักจะพูดถึงความยาวเป็น 256 ซึ่งเป็นสิ่งที่คุณจะได้รับเมื่อคุณลบอย่างเหมาะสมแทนที่จะเป็น 260 ซึ่งเป็นข้อ จำกัด ทางเทคนิค
Aaron Dufour

5
ปัญหานี้ทำให้ฉันโกรธ ยังคงมีอยู่ใน windows 8.1 ดูเหมือนว่าฉันจะย้ายไฟล์ไม่ได้แม้ว่าไฟล์จะถูกสร้างขึ้นตั้งแต่แรกแล้วก็ตาม หากคุณพบวิธีสร้างไฟล์ที่มีชื่อพา ธ ไฟล์มากกว่า 255 รายการคุณสามารถทำให้เครื่อง windows ของใครบางคนสับสนได้
Automatico

ตามที่ Jeremy Kuhne ปัญหากำลังได้รับการแก้ไขและอาจมีทางแก้ไขในไม่ช้า ดูวิดีโอนี้ youtube.com/watch?v=ZppqEMegCAA
J Edward Ellis

คำถามเกี่ยวกับ Windows 7 แต่อย่างไรก็ตาม Windows 10 มีตัวเลือกให้เปิดเส้นทางยาวสำหรับบางแอปพลิเคชัน ดูรายละเอียดเพิ่มเติมได้ที่คำตอบนี้stackoverflow.com/questions/27680647/…
quasoft

คำตอบ:


44

ดูhttp://msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx

สิ่งนี้อธิบายว่า Windows API เวอร์ชัน Unicode มีขีด จำกัด ที่สูงกว่าและจะเปิดใช้งานได้อย่างไร


14
แต่คำเตือน: มีรหัสจำนวนมาก (ส่วนใหญ่เป็นยูทิลิตี้ระบบของบุคคลที่สามและอื่น ๆ ) ที่ไม่สามารถเล่นได้ดีกับเส้นทางที่ยาวกว่า คุณอาจมีปัญหากับสิ่งนั้นหากคุณเริ่มใช้เส้นทางที่ยาวขึ้น
ReinstateMonica Larry Osterman

2
บทความนี้ถูกต้องหรือไม่? ฉันทดสอบง่ายๆกับทั้ง Windows Explorer และ Windows Command Prompt ใน Windows 7 และฉันไม่สามารถสร้างเส้นทางไฟล์ที่มีอักขระมากกว่า 260 ตัวได้ Microsoft ไม่ได้อัปเดตแอปพลิเคชันเหล่านี้ให้ใช้ Windows API เวอร์ชัน Unicode หรือไม่
Templar

7
น่าเสียดายที่ Windows Explorer บน Windows 7 x64 ยังคงอยู่ภายใต้ขีด จำกัด เส้นทางนี้ สิ่งนี้ให้ความรู้สึกว่าระบบปฏิบัติการทั้งหมดไม่สามารถเอาชนะขีด จำกัด นี้ได้เมื่อเป็นเพียง Windows Explorer ที่ไม่ได้รับการอัปเดตให้ทำงานกับเส้นทางที่ยาวขึ้น เป็นไปได้ว่าตัวจัดการไฟล์ของบุคคลที่สามที่ใช้ API ล่าสุดสามารถแก้ไขปัญหานี้ได้ ท้ายที่สุดแล้วว่าโปรแกรมจะถึงขีด จำกัด เส้นทางหรือไม่นั้นขึ้นอยู่กับว่าโปรแกรมนั้นใช้ API ใหม่ล่าสุดบน Windows หรือไม่
user1445967

2
ไม่ใช่คำถามเกี่ยวกับ API "ใหม่กว่า" หรือ "เก่ากว่า" คุณจะได้รับการสนับสนุนเส้นทางยาวก็ต่อเมื่อคุณขออย่างชัดเจนและ Explorer ไม่ทำเช่นนั้นน่าจะเป็นเพราะเหตุผลที่ชัดเจนนั่นคือความเข้ากันได้กับแอปพลิเคชันของบุคคลที่สามที่มีอยู่
Harry Johnston

9
-1 - ยินดีต้อนรับลิงก์ไปยังโซลูชันที่เป็นไปได้เสมอ แต่โปรดเพิ่มบริบทรอบ ๆ ลิงก์เพื่อให้ผู้ใช้รายอื่นได้ทราบว่ามันคืออะไรและทำไมจึงอยู่ที่นั่น อ้างอิงส่วนที่เกี่ยวข้องที่สุดของลิงก์ที่สำคัญเสมอในกรณีที่ไซต์เป้าหมายไม่สามารถเข้าถึงได้หรือออฟไลน์ถาวร meta.stackoverflow.com/tags/link-only-answers/info
Aaron Hall

20

คุณสามารถหลีกเลี่ยงขีด จำกัด นั้นได้โดยใช้การย่อยหากคุณต้องการ


5
ข้อมูลเพิ่มเติมที่นี่: microsoft.com/resources/documentation/windows/xp/all/proddocs/…
Chris B

1
หรือ robocopy ที่ติดตั้งใน Windows ตามคำตอบนี้stackoverflow.com/questions/29865863/…
KAE

5
คุณควรสาธิตวิธีการและให้ลิงค์ไปยังเอกสารที่เกี่ยวข้อง -1
Aaron Hall

3
ในขณะที่ฉันโหวตฉันยอมรับว่าตัวอย่างจะมีประโยชน์ 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 นั่นทำให้ฉันได้พบกับเส้นทางที่ลึก 500 ตัวอักษร เหตุผลของ ~ 1s คือวิธีที่ Explorer จัดรูปแบบเส้นทาง
Adam Marcionek

1
วิธีการแก้ปัญหาที่คล้ายกันจะใช้ทางแยกไม่ว่าจะผ่านส่วนขยายเชลล์หรือผ่านmklinkตัวอย่าง:mklink /J C:\newdir C:\some\really\long\path\
Charles Grunwald

14

วิธีแก้ปัญหาไม่ใช่วิธีแก้ปัญหาดังนั้นคำตอบคือ"ไม่"

ยังคงมองหาวิธีแก้ไขปัญหาต่อไปนี้เป็นวิธีแก้ไขที่เป็นไปได้: http://support.code42.com/CrashPlan/Latest/Troubleshooting/Windows_File_Paths_Longer_Than_255_Characters


1
องค์ประกอบหลักของ windows รวมถึง powershell, windows explorer shell และยูทิลิตี้ cmd เช่น del ยังคงไม่สามารถจัดการเส้นทางที่เกิน 250 อักขระได้และไม่มีวิธีแก้ปัญหาใด ๆ ที่จะแก้ไขข้อเท็จจริงที่ว่าเทคโนโลยีหลักของ Microsoft ไม่สามารถจัดการกับเส้นทางที่ยาวได้ในปี 2016 จนกว่าไมโครซอฟท์จะได้รับความร่วมมือจากกลุ่มนี้เราสามารถทำได้เพียงเล็กน้อย
Warren P


1

จาก Windows 10 เวอร์ชัน 1607 ข้อ จำกัด ถูกลบออกโดยการตั้งค่าคีย์รีจิสทรี

https://msdn.microsoft.com/en-us/library/aa365247%28VS.85%29.aspx?f=255&MSPPError=-2147217396#maxpath


2
แต่ไม่ใช่ใน windows 7?
gumuruh

ดูเหมือนจะไม่สมเหตุสมผลที่จะลงคะแนนสิ่งนี้เพราะถึงแม้จะไม่ตอบคำถาม แต่ก็น่าจะเป็นประโยชน์สำหรับหลาย ๆ คนที่มีคำถามคล้าย ๆ กัน
mwfearnley

อย่างไรก็ตามมีคำถามอื่น ๆ เกี่ยวกับ Win10
mjs
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.