这个可以运行的:
Sub test()
    Shell "e:\工程(1).exe"
End Sub

解决方案 »

  1.   

    Private Sub Command1_Click()
    Shell "cmd /k D:\12345^(bat^)你好\temp.bat", vbHide
    End Sub
      

  2.   

    谢谢版主,意思是特殊字符需要转义,刚才试过没加“cmd /k”就不行,加了就可以,这是为什么?
    百度了一下/k,“执行字符串命令但仍保留”
    没看懂什么意思
      

  3.   

    谢谢版主,意思是特殊字符需要转义,刚才试过没加“cmd /k”就不行,加了就可以,这是为什么?
    百度了一下/k,“执行字符串命令但仍保留”
    没看懂什么意思cmd /k 这样子的话就是后面都当做字符串交给cmd.exe处理了。如果不加的话就是交给vb处理,它不认识^你最初的代码应该是shell根据后缀名隐性调动了cmd
      

  4.   

    也就是说:
    Shell "D:\12345(bat)你好\temp.bat", vbHide

    Shell "cmd /c D:\12345(bat)你好\temp.bat", vbHide
    是一样的注意区别cmd /c 和 cmd /k的区别