Problem: Loading extensions by name with IApplication::FindExtensionByName does not return any results
IApplication::FindExtensionByName does not return any results.
Prior to version 9.0, application extensions are always loaded during startup. At version 9.0, the concept of a just-in-time (JIT) extension is introduced to shorten application startup time by loading extensions only when they are required.
A number of extensions shipped with ArcGIS Desktop have been converted to JIT extensions since version 9.0. Both standard and JIT extensions can be obtained programmatically by calling IApplication::FindExtensionByCLSID or IApplication::FindExtensionByName. While FindExtensionByCLSID works reliably, FindExtensionByName only works with the following JIT extensions:
ESRI Adjustment Tools
ESRI ArcPad Tools
ESRI ArcScan Tools
ESRI Object Editor
ESRI Publisher Extension
ESRI Raster Cleanup
ESRI Replication Extension
ESRI Topology Extension
Utility Network Analyst
If FindExtensionByName is used with the following extensions, it will not return any results.
Geography Network Extension
Locator Database Extension
Solution or Workaround
Use IApplication::FindExtensionByCLSID with the appropriate UID value.