3 回答

TA貢獻(xiàn)1835條經(jīng)驗(yàn) 獲得超7個贊
在運(yùn)行MicrosoftWindowsXP或更高版本的計(jì)算機(jī)上,可以在命令提示符下使用的字符串的最大長度為8191個字符。

TA貢獻(xiàn)2003條經(jīng)驗(yàn) 獲得超2個贊
我做了一些實(shí)驗(yàn)(在c#中使用ProcessStartInfo),而且命令行命令的“參數(shù)”字符串似乎僅限于XP中的2048個字符和Win 7中的32768個字符。我不知道8191限制指的是什么,但我還沒有找到任何證據(jù)。

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超8個贊
在這個我們看到的地方UNICODE_STRING
..現(xiàn)在讓我們來看看這個結(jié)構(gòu):
typedef?struct?_UNICODE_STRING?{ ????USHORT?Length; ????USHORT?MaximumLength; ????PWSTR??Buffer; }?UNICODE_STRING;
它用USHORT
(16位長度[0;65535])變量來存儲長度。而根據(jù)這,這個,長度表示大小(以字節(jié)為單位),而不是字符。所以我們有:65535 / 2 = 32767
(因?yàn)?code>WCHAR是兩個字節(jié)長)。
有幾個步驟來挖掘這個數(shù)字,但我希望它是明確的。
此外,要支持@sunetos,請回答所接受的內(nèi)容。8191是允許輸入的最大數(shù)目。cmd.exe
如果你超過了這個極限The input line is too long.
產(chǎn)生錯誤。所以,答案是正確的,盡管事實(shí)是cmd.exe
不是傳遞新進(jìn)程參數(shù)的唯一方法。
- 3 回答
- 0 關(guān)注
- 1662 瀏覽
添加回答
舉報