public esriLicenseStatus GetSpatialAnalystLicense()
{
//Check out a Spatial Analyst license with the ArcView product.
esriLicenseProductCode productCode =
esriLicenseProductCode.esriLicenseProductCodeAdvanced;
IAoInitialize pAoInitialize = new AoInitializeClass();
esriLicenseStatus licenseStatus = esriLicenseStatus.esriLicenseUnavailable;
//Check the productCode.
licenseStatus = pAoInitialize.IsProductCodeAvailable(productCode);
if (licenseStatus == esriLicenseStatus.esriLicenseAvailable)
{
//Check the extensionCode.
licenseStatus = pAoInitialize.IsExtensionCodeAvailable(productCode,
esriLicenseExtensionCode.esriLicenseExtensionCodeSpatialAnalyst);
if (licenseStatus == esriLicenseStatus.esriLicenseAvailable)
{
//Initialize the license.
licenseStatus = pAoInitialize.Initialize(productCode);
if ((licenseStatus == esriLicenseStatus.esriLicenseCheckedOut))
{
//Check out the Spatial Analyst extension.
licenseStatus = pAoInitialize.CheckOutExtension
(esriLicenseExtensionCode.esriLicenseExtensionCodeSpatialAnalyst)
;
}
}
}
return licenseStatus;
}