views:

55

answers:

1

I have coded an implementation of IWorkspaceExtension (along with IWorkspaceExtensionControl, which declares the Init method), and registered it in the ESRI Geodatabase Workspace Extensions Component Category. However, when I connect to the Workspace, the Extension is not "Init"ed.

I was able to get the implementation "Init"ed when I register the IWorkspaceExtension with the Geodatabase, but that is not an option because I cannot install the Extension on all clients, only on the one that will use the functionality.

I hope someone can answer in a couple of minutes what I have been struggling with for a couple of days. =D

Thanks.

A: 

Did you register it with IWorkspaceExtensionManager.RegisterExtension? http://resources.esri.com/help/9.3/ArcGISEngine/dotnet/d50974a4-d67a-4cf0-9041-20cdb9f3a052.htm#GDBReg

Keep in mind that without the DLL, or if the DLL crashes, you will not be able to open the workspace. This wouldn't be a problem if ESRI allowed assemblies to be stored in the geodatabase, the way SQL Server does.

Kirk Kuykendall
Once again, you've hit the nail on the head. Missing dependencies (Ninject) must be copied into the directory where ArcMap lives. If the custom dll fails, it doesn't open the workspace extension.Thanks so much!
grefly

related questions