读书人

ShellExecute执行没有反应,该怎么解决

发布时间: 2012-03-09 16:54:57 作者: rapoo

ShellExecute执行没有反应
ShellExecute(Form1, "open ", "cmd.exe ", "dir ", " ",SW_SHOW );
弹出了dos窗口,但是没有看到dir命令,用> abc.txt也没有用

[解决办法]
可先看看ShellExecute返回的值是否大于32,如果没大于32的话,就用GetLastError看看错误的原因

不过我看你的代码里也有问题
第一个参数是个句柄,怎么把对象传进来了?
另外,如果不设置目录的话,应该把参数写成NULL,而不要用 " "
[解决办法]
"/c dir "
[解决办法]
ShellExecute(0, "open ", "cmd.exe /c \ "dir c:\\\ " ",0,0,SW_SHOW);
[解决办法]
ShellExecute(Form1, "open ", "cmd.exe ", " /k dir ", " ",SW_SHOW );
[解决办法]
你运行cmd /?就知道了
[解决办法]
CMD的/K参数表示:执行字符串指定的命令但保留

另外,那个黑窗口不是什么DOS,是控制台。

读书人网 >C++ Builder

热点推荐