前页 | 后页 |
技巧和窍门
注意事项
物品 |
细节 |
也见 |
---|---|---|
GUID |
用于注册插件 的注册GUID和名称插件 Enterprise Architect 32 位和 64 位版本应该是一样的。只有 DLL 的名称和/或位置应该不同。 |
|
Enterprise Architect 64 位和 C++插件 |
除了使用正确的注册密钥(参见Deploy Ad-Ins帮助主题中的步骤 4)之外,没有任何特殊配置可以让 64 位 COM object在Enterprise Architect 64 位下运行。 |
部署插件 |
.NET插件 |
生成.NET程序集时,必须将“目标平台”显式设置为 x86/x64。当Enterprise Architect 32运行在 64 位版本的 Windows 上运行时,将其留在“任何 CPU”上可能会导致问题。 将 x64目标添加到您的项目并重新构建项目。 当 Interop.EA 包含在项目中时,Visual Studio 在尝试注册.NET程序集时出现问题。它将尝试使用 regasm 来构建架构Interop.EA。如果您取消选中项目设置中的“Register for COM interop”选项(假设您有权写入注册表),我们会发现添加到 Post-Build脚本帮助。 如果 $(PlatformName) == x64 ("%Windir%\Microsoft.NET\Framework64\v4.0.30319\regasm" "$(TargetPath)") 如果 $(PlatformName) == x86 ("%Windir%\Microsoft.NET\Framework64\v4.0.30319\regasm" "$(TargetPath)") 注记:在撰写本文时, .NET插件在Wine下和使用 Wine-Mono 时无法工作。 |
|
Java API |
Java API 加载最后安装的Enterprise Architect ,并且在使用 32 或 64 版本的 dll 时不受影响,只要Java运行时可以找到 SSJavaCOM DLL。 |
|
Visual Basic 5/6 用户注记 |
Visual Basic 用户应注记, Enterprise Architect接口的版本号以类似于以下的形式存储在 VBP 项目文件中: 参考=*\G{64FB2BF4-9EFA-11D2-8307-C45586000000}#2.2#0#..\..\..\..\Program Files\ Sparx Systems \EA\建筑师#Enterprise物件模型2.02 如果从一个版本的Enterprise Architect迁移到另一个版本时遇到问题,请在文本编辑器中打开 VBP 文件并删除此行。然后在 Visual Basic 中打开项目并使用 Project-References 创建一个对Enterprise Architect物件模型的新参考。 |
|
持有状态信息 |
插件 是可能的插件 保存状态信息,这意味着数据可以存储在成员变量中以响应一个事件并在另一个事件中检索。这样做有一些危险:
应使用存储库参数及其方法和属性来提供必要的数据。 |
|
Enterprise Architect未关闭 |
.NET特定问题 自动化检查对象的使用,并且在它们不再被使用之前不允许它们被销毁。 如自动化接口主题中所述,如果您的自动化控制器是使用.NET框架编写的,即使您释放了对它的所有引用, Enterprise Architect也不会关闭。要强制释放 COM 指针,请调用内存管理函数,如下所示: GC.Collect(); GC.WaitForPendingFinalizers(); 此外,由于自动化客户端连接到Enterprise Architect ,这会创建插件,然后再连接回Enterprise Architect ,因此可能会陷入僵局, Enterprise Architect和插件不会彼此松手并保持彼此活跃。一个插件 可能会保留与Enterprise Architect的挂钩,因为:
杂项 在使用.NET框架开发插件时,您必须在项目的属性中选择 COM互 操作 性,以便将其识别为插件 . 某些开发环境不会在创建时自动注册 COM DLL。在Enterprise Architect识别插件 之前,您可能必须手动执行此操作插件 . 您可以使用您的私人插件 键(根据插件 的要求插件 部署)来存储与您的插件 相关的配置信息插件 . |
示例和提示 技巧和窍门 插件 事件 |