IIS无法找到Enterprise Architect Addin
我有一个使用C#编写的Web应用程序,它允许用户创建图表并将它们导出到Enterprise Architect。该插件也用C#编写,并使用选项Register for COM Interop
构建。当我使用Visual Studio 2015调试应用程序时,它可以正常工作,但是当我尝试使用IIS进行部署时,它不起作用。 我尝试使用IIS无法找到Enterprise Architect Addin
c:\windows\...\4.0.30319\regasm c:\inetpub\wwwroot\myApp\bin\MyAddin.dll /codebase
注册手动MyAddin.dll
,然后将其添加到注册表中,用键
HKLM\Software\Wow6432Node\Sparx Systems\EAAddins\MyAddin
,但我仍然得到一个错误。 的错误是:
"Error while executing transaction. Actions have been rolled back."
Exception"System.Runtime.InteropServices.COMException (0x80080005): Die COM-Klassenfactory für die Komponente mit CLSID
{67F4E0FA-46A7-4255-B084-69A9433D08C3}
konnte aufgrund des folgenden Fehlers nicht abgerufen werden: 80080005 Server execution failed (Ausnahme von HRESULT: 0x80080005 (CO_E_SERVER_EXEC_FAILURE)).
bei System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
bei System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
bei System.Activator.CreateInstance(Type type, Boolean nonPublic)
bei System.Activator.CreateInstance(Type type)
bei NAF.Util.EaUtil.load_ea_repository(String eapFilePath)
bei EABridge.CapabilityImporter.Import(Int32 projectId, String eaTemplatePath)
bei EAsyNAF.WebApp.Controllers.HomeController.<>c_DisplayClass15_0.<CreateProject>b_0(ITransaction transaction)
bei EAsyNAF.WebApp.Utils.TransactionUtils.ExecuteTransaction(Action`1 action, IDataServiceManager dataService, ILogger logger, Action customRollback)"
我使用的是Windows 7企业版和IIS 6.1 SP1
是否有人有一个想法,可能是什么?
EA需要登录的用户才能使用该API。当您在IIS中运行它时,您可以访问EA作为服务。这根本行不通。
我依稀记得一些项目(是否在SourceForge上?),这已经有两年时间了。但是,这是停滞不前。
在LieberLieber的家伙在这个方向的东西:https://www.lieberlieber.com/en/web-collaborator-for-enterprise-architect/
参见http://www.sparxsystems.com/forums/smf/index.php/topic,30960.msg224599.html#msg224599
嗨,谢谢。现在你提到了“真正”的问题,我发现了其他来源。现在我正在努力解决另一个问题。我遵循链接上的步骤:http://blog.lieberlieber.com/2012/08/23/ea-app-is-not-visible-in-component-servicesdcom-x64/,但我仍然没有看到EA.App在DCOM配置文件夹中。这里有什么提示吗? – adelinerd
对不起,我只知道这个产品存在。如果您遇到问题,您应该联系LieberLieber。 –
我们设法通过使用一种叫做FireDaemon工具运行它。我们已经读过,所谓的“会话0”存在一个问题。这个应用程序允许我们在本次会议中作为服务运行。我尝试了其他工具,例如http://nssm.cc/,但在我们的案例中它不起作用。我们为EA加载项创建了WCF服务,并且此服务现在通过FireDaemon启动。 我们仍在试图找到另一种解决方案,但至少我们让我们的应用程序运行。
您必须使用加载项来部署您的Sparx Ea安装,并且用户可以像登录一样运行(这是可能的),然后让您的网站从那里拨打Sparx EA – Mart10