Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VB6:通过Shell执行两个命令_Shell_Vb6 - Fatal编程技术网

VB6:通过Shell执行两个命令

VB6:通过Shell执行两个命令,shell,vb6,Shell,Vb6,我试图通过vb6 Shell命令执行两个命令。两个命令已用“&&”字符串拆分。以下是我想要执行的: "D:\thepath\unzip.exe" -o -q "D:\7zipa.zip" -d"D:\7zipa_zip" && cmd /c echo Hi>C:\Users\AmirrezA\AppData\Local\Temp\UZP.txt 当执行第二个命令时,它被称为“D:\thepath\unzip.exe”的一部分,但是当我试图通过windows命令提示符执行上

我试图通过vb6 Shell命令执行两个命令。两个命令已用“&&”字符串拆分。以下是我想要执行的:

"D:\thepath\unzip.exe" -o -q "D:\7zipa.zip" -d"D:\7zipa_zip" && cmd /c echo Hi>C:\Users\AmirrezA\AppData\Local\Temp\UZP.txt
当执行第二个命令时,它被称为“D:\thepath\unzip.exe”的一部分,但是当我试图通过windows命令提示符执行上面的同一行时,没有问题。无法通过VB6 shell函数执行的上面这行有什么问题?

VB6 shell()函数是CreateProcess()上的一个薄包装,根本不涉及“shell”。CreateProcess()不理解CMD.EXE的命令语法,操作级别低得多


要执行您似乎认为需要的操作,您必须使用Shell()运行“fat old CMD.EXE”(命令Shell)的实例,并将命令传递给该实例。

最简单的方法是创建一个批处理文件(.bat),其中包含多个命令。然后从VB6执行批处理文件。