ข้อจำกัดของสายอักขระที่บรรทัดคำสั่งพร้อมรับคำสั่ง (Cmd. exe)

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 830473 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

สรุป

บทความนี้กล่าวถึงข้อจำกัดความยาวของสายอักขระที่คุณใช้จากพรอมต์คำสั่งในพร้อมรับคำสั่ง (Cmd.exe) และวิธีการที่คุณสามารถใช้เพื่อหลีกเลี่ยงข้อจำกัดนี้

ข้อมูลเพิ่มเติม

บนคอมพิวเตอร์ที่ใช้ Microsoft Windows XP หรือในภายหลัง ความยาวสูงสุดของสายอักขระที่คุณสามารถใช้พร้อมรับคำสั่ง 8191 อักขระ คอมพิวเตอร์ที่ใช้ Microsoft Windows 2000 หรือ Windows NT 4.0 ความยาวสูงสุดของสายอักขระที่คุณสามารถใช้พร้อมรับคำสั่งมีอักขระ 2047

ข้อจำกัดนี้นำไปใช้กับบรรทัดคำสั่ง ตัวแปรสภาพแวดล้อมที่แต่ละ (เช่นตัวแปรเส้น) ที่สืบทอด โดยกระบวนการอื่น ๆ expansions ตัวแปรของระบบทั้งหมด ถ้าคุณใช้พร้อมรับคำสั่งเรียกใช้แฟ้มชุด ข้อจำกัดนี้นำไปใช้กับชุดงานการประมวลผลแฟ้มเช่นกัน

ตัวอย่าง

รายการต่อไปนี้ให้บางตัวอย่างของวิธีที่ข้อจำกัดนี้ใช้กับคำสั่งที่คุณเรียกใช้ในพร้อมรับคำสั่งและคำสั่งที่คุณใช้ในแฟ้มแบตช์
  • ในพร้อมรับคำสั่ง ความยาวรวมของบรรทัดคำสั่งต่อไปนี้ที่คุณใช้พร้อมรับคำสั่งไม่สามารถประกอบด้วยมากกว่า 2047 หรือ 8191 อักขระ (ตามความเหมาะสมกับระบบปฏิบัติการของคุณ):
    cmd.exe /kExecutableFile.exeparameter1,parameter2...parameterN
  • ในแฟ้มแบทช์ ความยาวรวมของบรรทัดคำสั่งต่อไปนี้ที่คุณใช้ในแฟ้มแบตช์ไม่สามารถประกอบด้วยมากกว่า 2047 หรือ 8191 อักขระ (ตามความเหมาะสมกับระบบปฏิบัติการของคุณ):
    cmd.exe /kExecutableFile.exeparameter1,parameter2...parameterN
    ข้อจำกัดนี้นำไปใช้กับบรรทัดคำสั่งที่มีอยู่ในชุดแฟ้มเมื่อคุณใช้พร้อมรับคำสั่งเรียกใช้แฟ้มแบตช์
  • ในพร้อมรับคำสั่ง ความยาวรวมของEnvironmentVariable1หลังจากที่คุณขยายEnvironmentVariable2และEnvironmentVariable3ไม่สามารถประกอบด้วยมากกว่า 2047 หรือ 8191 อักขระ (ตามความเหมาะสมกับระบบปฏิบัติการของคุณ):
    c: > เซ็ตEnvironmentVariable1=EnvironmentVariable2EnvironmentVariable3
  • ในแฟ้มแบทช์ ความยาวรวมของบรรทัดของคำสั่งต่อไปนี้หลังจากที่คุณขยายตัวแปรสภาพแวดล้อมในบรรทัดคำสั่งไม่สามารถประกอบด้วยมากกว่า 2047 หรือ 8191 อักขระ (ตามความเหมาะสมกับระบบปฏิบัติการของคุณ):
    ExecutableFile.exeparameter1parameter2
  • ถึงแม้ว่าข้อจำกัด Win32 สำหรับตัวแปรของสภาพแวดล้อมที่มีอักขระ 32,767 พร้อมรับคำสั่งละเว้นทุกตัวแปรสภาพแวดล้อมที่สืบทอดมาจากกระบวนการหลัก และมีความยาวเกินข้อจำกัดของตนเองของอักขระ 2047 หรือ 8191 (ตามความเหมาะสมกับระบบปฏิบัติการ) สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการSetEnvironmentVariableฟังก์ชัน การเยี่ยมชมเว็บไซต์ต่อไปนี้ของ Microsoft:
    http://msdn2.microsoft.com/en-us/library/ms686206.aspx

วิธีการหลีกเลี่ยงข้อจำกัดที่

เมื่อต้องการหลีกเลี่ยงข้อจำกัดที่ ใช้วิธีต่อไปนี้ (ตามความเหมาะสมกับสถานการณ์ของคุณ) อย่างน้อยหนึ่งอย่าง:
  • ปรับเปลี่ยนโปรแกรมที่ต้องให้บรรทัดคำสั่งที่มีความยาวเพื่อให้มีใช้แฟ้มที่ประกอบด้วยข้อมูลพารามิเตอร์ และประกอบด้วยชื่อของแฟ้มในบรรทัดคำสั่งแล้ว

    ตัวอย่างเช่น แทนการใช้การExecutableFile.exeParameter1Parameter2...ParameterNโปรแกรมจะใช้บรรทัดคำสั่งที่คล้ายกับบรรทัดคำสั่งต่อไปนี้ การปรับเปลี่ยนบรรทัดคำสั่งในแฟ้มแบทช์ ที่ใดParameterFileมีแฟ้มที่ประกอบด้วย(พารามิเตอร์ที่จำเป็นparameter1parameter2...ParameterN):
    ExecutableFile.exe c:\temp\ParameterFile.txt
  • ปรับเปลี่ยนโปรแกรมที่ใช้ตัวแปรสภาพแวดล้อมที่มีขนาดใหญ่เพื่อให้ตัวแปรสภาพแวดล้อมประกอบด้วยน้อยกว่าอักขระ 2047 หรือ 8191 (ตามความเหมาะสมกับระบบปฏิบัติการของคุณ)

    ตัวอย่างเช่น ถ้าเส้นทางตัวแปรสภาพแวดล้อมที่ประกอบด้วยมากกว่า 2047 อย่างใดอย่างหนึ่ง หรืออักขระ 8191 (ตามความเหมาะสมกับระบบปฏิบัติการของคุณ), ใช้วิธีการต่อไปนี้อย่างน้อยหนึ่งอย่างเพื่อลดจำนวนของอักขระ:
    • ใช้ชื่อที่สั้นลงสำหรับแฟ้มและโฟลเดอร์
    • ลดความลึกของ trees โฟลเดอร์
    • เก็บแฟ้มในโฟลเดอร์ที่น้อยลงเพื่อให้จำเป็นในตัวแปรสภาพแวดล้อมของเส้นทางโฟลเดอร์น้อยลง
    • ตรวจสอบวิธีที่เป็นไปได้ที่คุณสามารถใช้เพื่อลดการอ้างอิงของเส้นทางสำหรับการค้นหาแฟ้ม.dll

คุณสมบัติ

หมายเลขบทความ (Article ID): 830473 - รีวิวครั้งสุดท้าย: 14 มกราคม 2554 - Revision: 4.0
ใช้กับ
  • Microsoft Windows Server 2003 Datacenter Edition
  • Microsoft Windows Server 2003 Enterprise Edition
  • Microsoft Windows Server 2003 Standard Edition
  • Microsoft Windows Server 2003 Web Edition
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional Edition
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Workstation 4.0 Developer Edition
Keywords: 
kbinfo kbmt KB830473 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:830473

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com