亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

命令行字符串的最大長度

命令行字符串的最大長度

PIPIONE 2019-07-13 14:45:17
在Windows中,命令行字符串的最大長度是多少?意思是,如果我指定一個程序,該程序在命令行上接受參數,如abc.exe -name=abc我編寫的一個簡單的控制臺應用程序通過命令行獲取參數,我想知道最大允許量是多少。
查看完整描述

3 回答

?
qq_花開花謝_0

TA貢獻1835條經驗 獲得超7個贊

在運行MicrosoftWindowsXP或更高版本的計算機上,可以在命令提示符下使用的字符串的最大長度為8191個字符。


查看完整回答
反對 回復 2019-07-13
?
湖上湖

TA貢獻2003條經驗 獲得超2個贊

我做了一些實驗(在c#中使用ProcessStartInfo),而且命令行命令的“參數”字符串似乎僅限于XP中的2048個字符和Win 7中的32768個字符。我不知道8191限制指的是什么,但我還沒有找到任何證據。


查看完整回答
反對 回復 2019-07-13
?
慕森卡

TA貢獻1806條經驗 獲得超8個贊

在這個我們看到的地方UNICODE_STRING..現在讓我們來看看這個結構:

typedef?struct?_UNICODE_STRING?{
????USHORT?Length;
????USHORT?MaximumLength;
????PWSTR??Buffer;
}?UNICODE_STRING;

它用USHORT(16位長度[0;65535])變量來存儲長度。而根據這,這個,長度表示大小(以字節為單位),而不是字符。所以我們有:65535 / 2 = 32767(因為WCHAR是兩個字節長)。

有幾個步驟來挖掘這個數字,但我希望它是明確的。


此外,要支持@sunetos,請回答所接受的內容。8191是允許輸入的最大數目。cmd.exe如果你超過了這個極限The input line is too long.產生錯誤。所以,答案是正確的,盡管事實是cmd.exe不是傳遞新進程參數的唯一方法。


查看完整回答
反對 回復 2019-07-13
  • 3 回答
  • 0 關注
  • 1674 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號