简体   繁体   中英

What can be the issue for the 0X80040154 missing error in Enterprise Architect Add-in

I am using Enterprise Architect 10 and have created various add-ins before. This particular add-in shows the error mentioned in the Manage extensions sections.

The Key is getting created properly and i am using the correct assembly reference.

Just wanted to know if there is any special cause for this type of error.

该图显示了错误的屏幕截图

This is very unfortunate. EA does not give you any hint except that cryptic message (before it even was just "Error").

However, I think that this registry error description can give you a hint. So go back and cross check your registry. Also make sure to enable debug prints that will give you information about the registry and the startup process.

If its indeed a class not registered error like Thomas Pointed out, try running this command in a command prompt running as administrator

regsvr32 "path to your dll"

Other SO question for reference

I should also point out that this error could also mean that the name of the dll you specified in the registry key for EA might not be the same as the name of the registered DLL.

Some precisions:

Adding the key only tells EA what to look for in the Registered dlls library, but you still need to register it to the dll library.

If you are debugging with visual studio, there is an option for making it register to the com library when you start debugging

I also had the "Missing" error with Enterprise Architect: "Missing - (Error: 0x800401f3)". I did several things trying to fix it. The problem might be one of the following:

  • Set your active target in Visual Studio to "Release" (Libraries might be incompatible between release and debug)
  • In Visual Studio -> Right click on your project in the Solution Explorer -> Properties -> Build (pane) -> Platform target to "x86" (Enterprise Architect is x86 (Libraries might be incompatible between x86 en x64))
  • In the same "Build" (pane)
    • At output, select "Register for COM interop
  • Now in the pane "Application":
    • The "Assembly name" is the same as your AddIn name in the registry
    • The "Default namespace" is the same as your namespace in the registry-value
    • Now in that pane click on the button "Assembly Information"
    • The "Title" is the same as your AddIn name in the registry
    • The "Product" is the same as your AddIn name in the registry
    • "Make assembly COM-Visible" is checked.

For building your Assembly, you must run it as administrator (click windows start type "Visual Studio", right click -> Run as administrator). It is also best to use Rebuild, because it might say build skipped "all up to date".

检查这些配置点

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM