I have written an application that gives users access to many functions, some of which employ ArcGIS functionality (like processing rasters etc). I am able to 'bind' to an ArcGIS instance and license just fine with:
ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop)
Dim pAoInitialize As AoInitialize
Dim licenseStatus As esriLicenseStatus
Dim productCode As esriLicenseProductCode
'Create an AOInitialize object
pAoInitialize = New AoInitialize
Select Case UCase(Ltype)
Case "ARCINFO"
productCode = esriLicenseProductCode.esriLicenseProductCodeArcInfo
Case "ARCEDITOR"
productCode = esriLicenseProductCode.esriLicenseProductCodeArcEditor
Case "ARCVIEW"
productCode = esriLicenseProductCode.esriLicenseProductCodeArcView
Case Else
productCode = esriLicenseProductCode.esriLicenseProductCodeArcView
End Select
licenseStatus = pAoInitialize.Initialize(productCode)
Question is, how do I then 'close' or 'unbind' from the license without closing the application? Our users access licenses from a pool and are charged on a usage rate, so being able to disconnect when not using the license would be great. We can do with extensions using checkin/checkout, however 'shutdown' is not working for me. The license is still allocated, only becoming available in the pool when the application is closed.
I'm using ArcGIS 10, VB .NET.
Thanks
Rob