program.exe file1 file2 ... file10000
不起作用。
Windows 对命令行参数的长度有奇怪的限制。它介于 32683 到 32853 个字符之间。还有其他方法可以传递参数吗?
答案1
最实际的解决方案是让你的供应商修复该程序。
如果不这样做,就可以(虽然不容易)挂钩 GetCommandLine 函数,使其返回任意长度的字符串,尽管这可能导致程序崩溃,具体取决于它处理命令行的方式。
答案2
问:“还有其他方法传递参数吗?”
答:是的,传入一个配置文件。让您的程序读取配置文件以获取所有参数。
例如:
========= Start of "C:\MyConfigFile.txt" =========
file1
file2
...
file10000
=================== End of File ==================
您的命令:
program.exe "C:\MyConfigFile.txt"