使用 Pascal 编程语言打开 ZWCAD 应用程序

open ZWCAD application with pascal programming language

我有一个应用程序可以通过以下方式打开 autocad 应用程序:

XlApp := GetActiveOleObject('AutoCAD.Application');

现在我想做同样的事情,但是用中望CAD应用程序,我怎么能做呢?

GetActiveOleObject 没有打开应用程序。它 returns 对 运行 应用程序的 COM/OLE 自动化对象的接口引用。

如果应用程序未运行,您可以 create/instantiate 使用 CreateOleObject

稍后,有了参考,您就可以从您的应用程序外部管理应用程序。喜欢opening/managing一些文档,做一些处理and/or展示给用户。

请注意,并非所有应用程序都支持 COM/OLE 自动化。您必须查看官方文档或开发人员指南。通常它包含接口描述,例如您可以调用的属性和方法。此外,Delphi 提供了 tlibimp 工具来从 dll 文件中导入可用的接口。

经过quick check,中望CAD好像支持COM自动化,可以试试下面的代码:

var O: Variant;
begin
  O := CreateOleObject('ZWCAD.Application');
  try
    // Work with object
    O.Visible := True;
  finally
    O := Unassigned;
  end; 
end;

或者,如果您只是想打开中望CAD,您可以使用

ShellExecute(0, 'open', 'c:\path\to\zwcad.exe', nil, nil, SW_SHOWNORMAL);