Problem: Dependency on Database Access extension is not removed when uninstalling a custom extension
The problem occurs when a custom extension which includes the Database Access extension as a dependency is created and the custom extension's install script attempts to make an SDE connection. If the attempt is unsuccessful, the custom extension is unloaded, but the Database Access extension is not. Typically, when a custom extension is unloaded, any dependent extensions should also be unloaded.
A dependency on the Database Access extension is created whether an SDE connection is made or not.
Solution or Workaround
The Database Access extension can be unloaded at the same time as the custom extension using either of the following two options:
- In the install script for the custom extension, set the SDEConnection variable to nil and then use av.PurgeObjects. For example:
theSDEConnection = nil
- Hardcode the Database Access extension unload using the 'Unload' request at the end of the install script. For example:
theExt = Extension.Find("C:\esri\av_gis30\arcview\ext32\dbaccess.avx".AsFilename)
If using this option, it is important to place this code within the "If...then" statement that checks for the SDE connection.