谢谢,
Private Declare Function ShellExecute Lib "shell32.dll" _
                Alias "ShellExecuteA" _
                (ByVal hwnd As Long, _
                ByVal lpOperation As String, _
                ByVal lpFile As String, _
                ByVal lpParameters As String, _
                ByVal lpDirectory As String, _
                ByVal nShowCmd As Long) _
                As Long
对于第四个参数lpParameters, 若我的运行程序有多个命令行参数,参数间以空格分割, 这该怎么处理?
***************
比如,我工程需要的命令行格式是" -e 名称 -d 路径"(路径参数有可能包含空格的参数),:
(目前使用绝对路径并且路径无空格时可以正确执行)
a = 安装路径 & "\code\bin\工程.exe" 
b = "-e 工程1 -d C:\xxx\我的路径" 
Call ShellExecute(Me.hwnd, "Open", a, b, App.Path, 1)
****************求助:
1.当路径为c:\Program File\...是怎么处理 ? 
2.如果"路径"是字符串变量,也就是我怎么把这个变量(也就是上例的b),传给ShellExecute ?第一次问,请各位大侠帮忙给个办法,谢谢!

解决方案 »

  1.   

    谢谢,谁来帮我一下,
    ShellExecute函数中 lpParameters变量,到底怎么使用? 它有什么限制呢?
      

  2.   

    1.当路径为c:\Program File\...是怎么处理 ? a = 安装路径 & "\code\bin\工程.exe"
    b = "-e 工程1 -d ""C:\Program Files\我的路径\xxxx.dat"" " 2.如果"路径"是字符串变量,也就是我怎么把这个变量(也就是上例的b),传给ShellExecute ?b = "-e 工程1 -d """ & strFilePath & """ " 
      

  3.   

    谢谢,我用shortname ,shorpath处理了,废了很多麻烦 . 还是谢谢楼上的朋友.
    分给你了,