CHEARV 发表于 2010-10-3 12:29:53

如何实现多次调用Run运行ACDSee却只运行一个ACDSee程序?

我想用AutoIT调用ACDSee.EXE来显示一组图片,我通过RUN或者ShellExecute来调用"ACDSEE.EXEPICNAME"的时候发现一个问题,就是我调用几次ACDSEE,ACDSEE就运行几次。而我在文件夹里双击不同图片时,却始终只在一个ACDSEE程序里显示。
    我通过查看资源管理器里的文件夹选项里的文件类型,发现图片文件关联ACDSEE程序时,好像并不单单是通过命令行调用的,而是通过一项叫使用 DDE的设置来实现的。那么,我想请教一下,AutoIT里面有没有办法来操作这个DDE呢?这样我就可以查看多张图片却始终只运行一个ACDSEE。
   目前,我使用的笨办法是,调用前先检查是否存在ACDSEE窗口,如果存在,先关了这个窗口再调用ACDSEE程序。有没有其他的办法呢?另外,我想通过修改AutoIT代码来解决这个问题,而非通过设置ACDSEE来实现。

xb0x 发表于 2010-10-3 14:50:57

本帖最后由 xb0x 于 2010-10-3 14:52 编辑

jpg关联ACDSEE,然后 ShellExecute("图片.jpg")

CHEARV 发表于 2010-10-3 15:03:47

回复 2# xb0x


    这种方法试过,但打开图片离奇的慢,不知道咋回事。

lanfengc 发表于 2010-10-3 15:54:22

检查ACDSEE进程,存在的话直接打开图片,不存在则执行后再打开。

飘云 发表于 2010-10-3 18:57:54

因为你调用的是程序,所以程序肯定会打开的,只能如楼上所言,关联图片后,判断进程存在与否,存在则打开图片,不存在则运行程序

CHEARV 发表于 2010-10-3 19:42:31

因为你调用的是程序,所以程序肯定会打开的,只能如楼上所言,关联图片后,判断进程存在与否,存在则打开图 ...
飘云 发表于 2010-10-3 18:57 http://www.autoitx.com/images/common/back.gif


    但是我用ShellExecute($PICFile)直接打开图片的话,速度相当慢,切换图片之间要等五六秒。

xcycom 发表于 2010-10-4 08:28:39

{:face (427):}
页: [1]
查看完整版本: 如何实现多次调用Run运行ACDSee却只运行一个ACDSee程序?