通过C#代码打开Sparx EA项目打开新项目对话框

时间:2014-10-13 09:45:47

标签: c# api enterprise-architect

我正在尝试使用C#应用程序连接到Sparx EA项目。 为此,我创建了一个C#控制台应用程序,并在项目中添加了Interop.EA.dll作为参考。以下是我用来连接Sparx EA的代码。

r = new EA.Repository();
bool isOpen = r.OpenFile("C:\\Sparx-EA\\Sample Project.eap");

我原以为它会打开Sample Project,而是打开New Project对话框来获取新的项目名称/路径。当我在没有选择任何项目的情况下关闭该对话框时,它正在打开示例项目。

我在这段代码中是否有任何错误?每次运行程序时,我都不想取消/关闭“新建项目”对话框。

我正在使用Sparx EA 11.1.1111试用版。 打开Sparx EA UI时遇到相同的行为。它首先要求新项目,并在关闭该对话框时打开以前打开的项目。

1 个答案:

答案 0 :(得分:3)

我无法重现那种行为。 我使用的完整和完整的代码:

using System;

namespace EATest {
  class Program {
    public static void Main(string[] args) {
      Console.WriteLine("Hello World!");

      EA.Repository r = new EA.Repository();
      bool isOpen = r.OpenFile("C:\\temp\\Sparx-EA\\Sample Project.eap");
      r.ShowWindow(1);
      Console.Write("Press any key to continue . . . ");
      Console.ReadKey(true);
    }
  }
}

它就像我预期的那样打开了我的项目。 因为当你手动打开EA时也会发生这种情况,我猜这里还有别的东西在玩。 这可能是由于另一个加载项运行。确保使用Extensions | Manage Add-Ins ...

禁用所有加载项

如果不是那样的话,我猜你的EA安装一定有问题。我建议您通过发送bug report

来询问Sparx