Kevin_98116 发表于 2014-2-5 23:25:14

关于startapp打开应用程序问题

各位大侠晚上好:
在下遇到这样一个问题,用startapp 打开新建打印样式styshwiz.exe文件 后如何读取该styshwiz.exe 程序的运行状况,即新建的打印样式是否完成,若完成就执行刷新打印样式列表程序。还望各位不吝赐教,谢谢!
(defun NewPlotStyle ()
(startapp "EXPLORER.EXE" (findfile "styshwiz.exe"))
)

ZZXXQQ 发表于 2014-2-6 08:45:15

如果应用程序没有返回值,就要在运行应用程序前保存当前图层信息,运行应用程序后再度获取图层信息,进行比较。

Kevin_98116 发表于 2014-2-6 10:17:57

ZZXXQQ 发表于 2014-2-6 08:45 static/image/common/back.gif
如果应用程序没有返回值,就要在运行应用程序前保存当前图层信息,运行应用程序后再度获取图层信息,进行比 ...

这倒是一个好方法,谢谢!不知道还有没有别的方法呢?

Kevin_98116 发表于 2014-2-6 12:04:27

ZZXXQQ 发表于 2014-2-6 08:45 static/image/common/back.gif
如果应用程序没有返回值,就要在运行应用程序前保存当前图层信息,运行应用程序后再度获取图层信息,进行比 ...

试了下,这样比较会出现个新的问题,如果打印样式新建没完成直接关闭会导致程序进入死循环。
(defun NewPlotStyle ()
(setq PlotStyles_list (list (GetPlotStylesList)))
(startapp "EXPLORER.EXE" (findfile "styshwiz.exe"))
(GetPrintersList)
(setq Compare (list (GetPlotStylesList)))
(while (equal PlotStyles_list Compare)
    (GetPrintersList)
    (setq Compare (list (GetPlotStylesList)))
)
(LoadPlotStylesList)
)

ZZXXQQ 发表于 2014-2-7 08:37:35

偶已经看不懂了

ZZXXQQ 发表于 2014-2-7 08:37:51

偶已经看不懂了

Kevin_98116 发表于 2014-2-8 08:34:41

呵呵,只能另外增加个刷新按钮解决了。

pengfei2010 发表于 2017-11-5 10:57:05

回帖是一种美德!感谢楼主的无私分享 谢谢
页: [1]
查看完整版本: 关于startapp打开应用程序问题