比如安装acdsee 6.0
strInstallPath="L:\工具软件\图片浏览\ACDSee6.0\setup.exe"
set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.run strInstallPath
WScript.Sleep 15000
WshShell.AppActivate "Acdsee 6.0 standard trial"
WshShell.SendKeys "%N"
WScript.Sleep 500
WshShell.SendKeys "%N"
WScript.Sleep 500
……
……问题是sendKeys如何做到与安装界面的窗口同步比如第一步我让它Sleep了15秒,但这只是个经验值,计算机性能不同,应该sleep的时间也不一样,如果第一步还没有完成,则第二步的sendkeys就无法起到作用,安装也无法进行下去了。

解决方案 »

  1.   

    不是的,你的意思是说把所有的选择用一个sendKeys发过去,让安装程序一个一个去取,好像这样不行呀,虽然说sendKeys是发送到键盘缓冲区,但是当安装程序完成一步(窗口界面变化)后,缓冲区就没有数据了,所以还是需要,完成一步,发送一个选择才行,问题是就是这个
      

  2.   

    我也对软件的自动安装很感兴趣 ^_^通常我首先考虑软件自带的无人值守安装功能,比如office、adobe reader等均可实现
    但也有很多软件无法(至少我不会)无人值守安装,比如VB6
    我还没有去研究怎么对付这种情况
    楼主探个路先^_^
    ======================
    关于楼主的问题
    可以试试
    调用API
    遍历当前存在的窗口
    再做相应处理不过这好象也不是万能的good lucky
      

  3.   

    问题是我不是很在行:1、不知道vbs能不能调用api
    2、不知道那个函数来遍历窗口
    3、不单单是遍历窗口,恐怕还是检测窗口中的控件,因为不同的步骤窗口(窗口名称和标题)一样,只是空间有所变化
      

  4.   

    $(
    偶没钻研过我以前下载过一个Robot 6.0的东东
    能录制VBS脚本
    你可以上网找一个试试