1、如果命令中的路径包含空格,要把路径去掉头尾用双引号包含起来。
例:strPath = “”D:\\\”te st\\\”test.exe;(用“\”进行字符转义)
2、用变量传命令的时候,要在命令字符开始加上”/c”,不然命令不会执行。
例:strCommand = “/c ” + “date”;
ShellExecute(NULL, “open”, “cmd”, strCommand, NULL, SW_SHOW);
3、用SW_HIDE使cmd窗口静默执行
例:ShellExecute(NULL, “open”, “cmd”, strCommand, NULL, SW_HIDE);
4、命令行执行结果可以使用”>”来保存到文件。
例:ShellExecute(NULL, “open”, “cmd”, “/c date >D:\\test.txt”, NULL, SW_HIDE);
5、通过对比输出文件进行结果分析。
6、strCommand不支持直接使用..\,要使用相对路径可以用tempdir来实现。
例:假设text.txt在test.exe的上一层目录中,ShellExecute(NULL, “open”, “cmd”, “/c D:\\test\\test.exe “tempdir\\..\\..\\text.txt >D:\\test.txt”, NULL, SW_HIDE);