明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1888|回复: 3

如何判断cad是否运行?

[复制链接]
发表于 2004-12-11 21:44:00 | 显示全部楼层 |阅读模式
我用setup factory7.0做了一个AutoCAD二次开放的安装程序,现在需要在安装程序运行前判断autocad是否在运行,不知道如何判断。有没有人知道如何做的,请介绍一下。


希望大家能给个思路。

发表于 2004-12-12 03:32:00 | 显示全部楼层
本帖最后由 作者 于 2004-12-12 4:25:19 编辑

判断cad已安装再执行二次开发的安装程序较方便吧,非得搞cad已运行再执行二次开发的安装程序?即使安装了,有时还要先退出cad再进入才能正常操作
发表于 2004-12-12 11:14:00 | 显示全部楼层
只能让作者在安装程序里面改一下了,
发表于 2004-12-12 11:49:00 | 显示全部楼层
这个需要编程实现判断。这就需要你的这个安装程序制作工具支持脚本编程。 可以提供一个思路:通过ActiveX接口判断AutoCAD是否正在运行。只要你的这个安装程序脚本支持这个接口就可以。以Pascal语言为例:
  1. function AutoCADRunning: boolean;
  2. var AcadApp:Variant;
  3. begin
  4.    try
  5.        AcadApp := GetActiveOleObject('AutoCAD.Application');
  6.    except
  7.    end;
  8.    Result := not VarIsEmpty(AcadApp);
  9. end;
复制代码
上述代码来自我提供的那个AutoCAD二次开发通用安装程序中的一部分。 我也可以提供一个使用VB/VBS写的一个例子:
  1. '==========================================================================
  2. '
  3. ' NAME: test AutoCAD running
  4. '
  5. ' AUTHOR: Qiu Feng
  6. ' DATE   : 2004-12-12
  7. '
  8. ' COMMENT:
  9. '
  10. '========================================================================== Function AutoCADRunning()
  11.    Dim acad
  12.    AutoCADRunning = True
  13.    On Error Resume Next
  14.    Set acad = GetObject(,"AutoCAD.Application")
  15.    If Err Then
  16.        AutoCADRunning = False
  17.    End If
  18.    On Error Goto 0   
  19. End Function' Main
  20. If AutoCADRunning() Then
  21.    MsgBox "AutoCAD is Running ..."
  22. Else
  23.    MsgBox "AutoCAD is not running..."
  24. end If
见附件。双击附件中的VBS文件可以直接运行这个VBScript程序,将会跳出一个对话框,告诉你AutoCAD是不是正在运行中。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-9-30 02:25 , Processed in 0.182567 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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