2017-08-11 87 views
2

我有一個使用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

是否有人有一個想法,可能是什麼?

+0

您必須使用加載項來部署您的Sparx Ea安裝,並且用戶可以像登錄一樣運行(這是可能的),然後讓您的網站從那裏撥打Sparx EA – Mart10

回答

1

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

+0

嗨,謝謝。現在你提到了「真正」的問題,我發現了其他來源。現在我正在努力解決另一個問題。我遵循鏈接上的步驟:http://blog.lieberlieber.com/2012/08/23/ea-app-is-not-visible-in-component-servicesdcom-x64/,但我仍然沒有看到EA.App在DCOM配置文件夾中。這裏有什麼提示嗎? – adelinerd

+0

對不起,我只知道這個產品存在。如果您遇到問題,您應該聯繫LieberLieber。 –

0

我們設法通過使用一種叫做FireDaemon工具運行它。我們已經讀過,所謂的「會話0」存在一個問題。這個應用程序允許我們在本次會議中作爲服務運行。我嘗試了其他工具,例如http://nssm.cc/,但在我們的案例中它不起作用。我們爲EA加載項創建了WCF服務,並且此服務現在通過FireDaemon啓動。 我們仍在試圖找到另一種解決方案,但至少我們讓我們的應用程序運行。

相關問題