之前在csdn看过 shell   "cmd   /c   pro.exe",vbhide  但是如果我想在根目录下运行 pro.exe 这个文件改怎么改呢?shell   "cmd   path   pro.exe",vbhide  这样吗?还是 shell   "cmd" &   path   "pro.exe",vbhide  呢?谢谢~

解决方案 »

  1.   

    Shell函数 返回 执行一个可执行文件,返回一个 Variant (Double),如果成功的话,代表这个程序的任务 ID,若不成功,则会返回 0。语法Shell(pathname[,windowstyle])Shell 函数的语法含有下面这些命名参数:部分 描述 
    pathname 必要参数。Variant (String),要执行的程序名,以及任何必需的参数或命令行变量,可能还包括目录或文件夹,以及驱动器。 
    Windowstyle 可选参数。Variant (Integer),表示在程序运行时窗口的样式。如果 windowstyle 省略,则程序是以具有焦点的最小化窗口来执行的。 
    windowstyle 命名参数有以下这些值:常量 值 描述 
    vbHide 0 窗口被隐藏,且焦点会移到隐式窗口。 
    VbNormalFocus 1 窗口具有焦点,且会还原到它原来的大小和位置。 
    VbMinimizedFocus 2 窗口会以一个具有焦点的图标来显示。 
    VbMaximizedFocus 3 窗口是一个具有焦点的最大化窗口。 
    VbNormalNoFocus 4 窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。 
    VbMinimizedNoFocus 6 窗口会以一个图标来显示。而当前活动的的窗口仍然保持活动。 
    说明如果 Shell 函数成功地执行了所要执行的文件,则它会返回程序的任务 ID。任务 ID 是一个唯一的数值,用来指明正在运行的程序。如果 Shell 函数不能打开命名的程序,则会产生错误。注意 缺省情况下,Shell 函数是以异步方式来执行其它程序的。也就是说,用 Shell 启动的程序可能还没有完成执行过程,就已经执行到 Shell 函数之后的语句。
      

  2.   

    直接指定目录运行偶不知道,但偶有个方法:用代码在目标目录临时建立一个bat,然后调用 exe。用 shell 命令只要运行这个bat就行了,完成后将这个bat删除。
      

  3.   

    shell   "cmd c:\ && cd\ && pro.exe",vbhide
      

  4.   

    && 在cmd中代表 命令分割符号
      

  5.   

    建议使用 cmd/? 察看详细使用方法
      

  6.   

    漏掉1个参数
    shell   "cmd /c c:\ && cd\ && pro.exe && exit",vbhide
      

  7.   

    记性有点变差了~
    shell   "cmd /c c: && cd\ && pro.exe && exit",vbhide
      

  8.   

    我有两个方法:
    1:用SHELL
    SHELL("ATTRIB +H FILE.EXE")
    2: 用API,
       SetFileAttribute(file,7)关于这个API你可以上网查查
      

  9.   

    先用ChDir改变程序的当前工作目录.再shell,你的程序
    比如,在程序所在根目录运行:
    ChDir "\"
    shell path & "\pro.exe",vbhide 'Path是pro.exe的路径,为了测试,你可以用cmd.exe 代换pro.exe在C:\根目录
    ChDir "C:\"
    shell  path & "\pro.exe",vbhide
      

  10.   

    对了,如果你用cmd.exe测试时,千万别用vbhide参数,否则没结果