上一页 下一页

示例和提示

 

要考虑的要点

科目

也可以看看

例子

通过示例代码提供了使用该接口的说明。有几组例子:

  • 您可以在Enterprise Architect安装下的Code Samples文件夹中找到VB 6和C#示例
    (默认值:C:\ Program Files \ Sparx Systems \ EA \ Code Samples)
  • 可以将Enterprise Architect设置为调用外部应用程序
  • 参考部分提供了几个VB.NET代码片段
  • 有关使用Visual Basic创建MS Word文档的综合示例,请访问以下网站:www.sparxsystems.com/resources/developers/autint_vb.html
  • 其他样品可从Sparx Systems网站获得; 请参阅可用资源主题
调用外部应用程序代码示例www.sparxsystems.com/resources/
developers/autint_vb.html
可用资源

技巧和窍门

另请注意以下提示和技巧:

  • 初始化新的存储库对象时,将执行Enterprise Architect(EA.exe)进程的实例 - 此进程必须保持运行才能执行自动化任务; 如果主窗口可见,您可以安全地将其最小化,但它必须保持运行
  • Enterprise Architect ActiveX接口是一个功能接口而不是数据接口; 当您通过接口加载数据时,加载Enterprise Architect用户界面元素(如Windows和菜单)并建立指定的数据库连接时会出现明显的延迟
  • 集合使用从零开始的索引; 例如,Repository.Models(0)表示存储库中的第一个模型
  • 在开发客户端软件期间,程序可能会意外终止,并使EA.exe在无法支持进一步接口调用的状态下运行; 如果您的程序异常终止,请确保Enterprise Architect未在后台运行(请参阅Windows的“任务管理器/进程”选项卡)
  • 可以通过使用GetObject()调用获取当前运行的Enterprise Architect实例的句柄(请参阅App对象的参考页面); 通过App对象访问Enterprise Architect模型可以查询当前的用户界面状态,例如使用Repository对象上的GetContextItem()来检测用户的当前选择,从而实现快速原型设计和测试
存储库类App类

企业架构师没有关闭

完成自动化控制器的所有处理后,建议在Repository对象上调用CloseFile()和Exit(),然后将对repository对象的所有引用设置为null。

     repository.CloseFile();

     repository.Exit();

     repository = null;

如果您的自动化控制器是使用.NET框架编写的,那么即使您释放了对它的所有引用,Enterprise Architect也不会关闭。要强制释放COM指针,请调用内存管理功能:

     所以GC.Collect();

     GC.WaitForPendingFinalizers();

控制正在加载加载项的Enterprise Architect的运行实例时还有其他问题 - 有关详细信息,请参阅技巧和陷阱主题。

技巧和陷阱