Here are the most common reasons:
- The XML file is missing or incorrect.
• If you open the STK Desktop application, check the Message Viewer window, and do not see a message that STK tried to load your plugin, it means there is an issue with the plugin manifest file. The manifest file needs to be a valid XML file and point to your plugin. Check the
STK programming interface help for more information.
- The plugin is not COM visible.
• Under the project properties, on the Application tab, click the Assembly Information… button and make sure the “Make assembly COM-Visible” check box is selected.
• Under the project properties, on the Build tab, make sure the “Register for COM interop” check box is selected. According to the Visual Studio documentation, this option is not necessary to run the project outside Visual Studio, but AGI has empirical evidence to the contrary.
- The plugin was not built with the right permissions.
• It's possible that your regular account does not have administrator privileges on your computer. To build the plugin, you need to open Visual Studio under an administrator account. Even if you build the plugin without administrator rights but register the DLL under the administrator account, the plugin will still not run in STK.
- The plugin was not registered on the user computer. There are at least two ways to deploy a UI plugin:
• Visual Studio installer project
• To install the plugin, you need to add the primary output from your UI Plugin project to the installer project. The default setting for registering the output is vsdrpCOM, which is the correct setting and should not be modified.
• Manually
• Copy the content of the Bin directory to the user computer and manually registering the plugin using command prompt.
• Make sure the command prompt is open under a user account with administrator privileges.
• For C#/VB.net plugins, run the regasm command located in C:\WINDOWS\Microsoft.NET\Framework\ directory with following syntax: regasm /codebase YOUR_UIPLUGINNAME.dll
- There is a platform mismatch.
• The STK 11 Desktop application is available in both 32-bit and 64-bit versions. The registered plugins have to match the platform version of the STK Desktop application. This means that you need to build a 32-bit version of the plugin for the 32-bit version of STK and a 64-bit version for the 64-bit version of STK. The registry-free plugins do not have this limitation. STK 10 and earlier versions accept only the 32-bit version.
• Building a plugin with the AnyCPU setting can cause issues. In theory, building the project on a 64-bit operating system for 64-bit STK with the AnyCPU setting should work. However, there are cases where users had to change the setting to 64-bit before the plugin would work.
- There is a .net Runtime mismatch (STK 10.1.3 and lower).
• Before STK 11, STK ran under .net runtime 2.0, so it accepted only the plugins built using .net Framework 3.5 or lower. Starting with STK 11 and Visual Studio 2010, the default framework was set to .net Framework 4.0 or higher.