明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3479|回复: 8

[求助]怎样强制性结束"acad.exe"进程

[复制链接]
发表于 2003-12-12 15:12:00 | 显示全部楼层 |阅读模式
用lisp的方法怎样强制性结束当前运行的所有"acad.exe"进程
发表于 2003-12-12 16:50:00 | 显示全部楼层
结束当前运行"acad.exe"
(COMMAND "QUIT")
 楼主| 发表于 2003-12-13 12:57:00 | 显示全部楼层
我试过这种方法,不过有时不好使,程序仍然继续执行。
发表于 2003-12-13 16:20:00 | 显示全部楼层
那可麻烦了,不过可以试试调用系统里的杀进程的
发表于 2003-12-15 08:39:00 | 显示全部楼层
HQ_2003发表于2003-12-13 12:57:00我试过这种方法,不过有时不好使,程序仍然继续执行。



程序仍然继续执行!!

舉個例子好嗎?
发表于 2003-12-15 10:03:00 | 显示全部楼层
龙龙仔发表于2003-12-15 8:39:00以下是引用HQ_2003在2003-12-13 12:57:13的发言:
我试过这种方法,不过有时不好使,程序仍然继续执行。



程序仍然继续执行!!

舉個例子好嗎?
[/quote]
用QUIT肯定不好使的的么,如果没有存盘他会让你存盘,如果还有其它文件开着那还不能退出啊,我是觉得得用系统的那个杀进程的命令那可能还行,
 楼主| 发表于 2003-12-16 17:16:00 | 显示全部楼层
是的。如果cad同时打开几个图形,如果用(command "QUIT" "Y" "" "") 则会提示存盘操作。如果取消的话,当切换到其他图形时,程序继续执行(譬如显示对话框)。

我觉得也应该用类似vb中的API函数之类,结束当前所有的进程。
API函数如下:
Declare Function TerminateProcess Lib "kernel32" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long
Declare Function GetCurrentProcess Lib "kernel32" () As Long
发表于 2003-12-16 17:27:00 | 显示全部楼层
LISP是不行的,每个程序的加载都是针对某个文档的,换到别的文档,这个文档不可能继续执行后面的程序。

可以使用ActiveX技术,返回非活动的文档以达到你的目的
发表于 2003-12-17 15:35:00 | 显示全部楼层
这样就可以了啊,不过是要在XP里的,应该XP有TASKKILL这个功能,(command "shell" "taskkill /f /im acad.exe")
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-27 10:36 , Processed in 0.185155 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表