CÓMO
ArcGIS Engine 10.0 puede autorizarse mediante el uso de un archivo de licencia sin conexión que se denomina archivo ASR. Este se utiliza para autorizar ArcGIS Engine 10.0, Service Pack 1 (SP1) a Service Pack 4 (SP4). Para asignar correctamente una licencia a Engine 10.0 utilizando archivos ASR, deben realizarse varios pasos.
Tenga en cuenta que los archivos ASR son precursores de los archivo de licencia segura de ESRI (ESLF). Los archivos ASR tienen extensión *.asr, mientras que los archivos ESLF tienen extensión *.eslf. La diferencia entre ambos radica en que los archivos ASR se crearon para ArcGIS 10.0 SP1 a Sp4; los archivos ESLF reemplazaron a los archivos ASR en 10.0 SP5 y pueden utilizarse para licenciar las versiones de Engine a partir de 10.1 hasta la versión actual.
ESRI.ArcGIS.AoAuthorizer.IAuthorizeLicense aoAuthorizeLicense = new ESRI.ArcGIS.AoAuthorizer.AoAuthorizeLicenseClass(); bool bound = ESRI.ArcGIS.RuntimeManager.Bind(ProductCode.Engine); // Bind to the ArcGIS Engine product string pathToASRLicenseFile = @"C:\temp\SomeASRFile.asr"; string password = "somePassword"; aoAuthorizeLicense.AuthorizeASRFromFile(pathToASRLicenseFile, password); // Authorize using the ASR File //aoAuthorizeLicense.DeauthorizeASRFromFile(pathToASRLicenseFile, password); // Uncomment this to de-authorize string featuresAdded = aoAuthorizeLicense.FeaturesAdded; System.Diagnostics.Debug.WriteLine("Features Added: " + featuresAdded); // check if licensing was successfully done // Check if the Engine Product Code is available ESRI.ArcGIS.esriSystem.IAoInitialize aoInitialize = new ESRI.ArcGIS.esriSystem.AoInitialize(); ESRI.ArcGIS.esriSystem.esriLicenseStatus esriLicense_Status = aoInitialize.IsProductCodeAvailable(esriLicenseProductCode.esriLicenseProductCodeEngine); System.Diagnostics.Debug.WriteLine("esriLicenseStatus: " + esriLicense_Status); // either "available" or "unavailable
Las llamadas de API anteriores se explican en el documento de Word: Autorización de ArcGIS 10 con ASR Files.docx.
En el código anterior, puede verse que la vinculación a un producto de ESRI (ArcGIS Engine) se ha llevado a cabo antes de la llamada al código ArcObjects.
Asegúrese de agregar una referencia de ensamblado a Esri.ArcGIS.AoAuthorizer.dll o AoAuthorizer.dll (estos dll son equivalentes) e incluya una sentencia using en la parte superior de la clase: using Esri.ArcGIS.AoAuthorizer.
Tenga en cuenta que si se omite el paso de registro de los dos archivos dll, ocurre un error en la siguiente línea de código:
IAuthorizeLicense aoAuthorizeLicense = new AoAuthorizeLicenseClass();
Error: Excepción COM no controlada: La recuperación del generador de clase COM correspondiente al componente con CLSID {6DBE8BF8-6000-4734-B1A8-C81C69651C06} ha fracasado a causa del siguiente error: 80040154.
IAoAuthorizeLicense.AuthorizeASRFromFile(pathToASRLicenseFile, password);
IAoAuthorizeLicense.DeauthorizeASRFromFile(pathToASRLicenseFile, password);
Error: Excepción COM no controlada. Se devolvió el error HRESULT E_FAIL de una llamada a componente COM.
Nota: Los archivos ASR funcionan en Windows 7, 8 y 10, tanto en plataformas de 32 bits como de 64 bits.
Nota: La compatibilidad con ArcGIS Engine 10.0 finalizó en 01/01/2016 para clientes estándar. La compatibilidad con clientes Premium caducó el 01/01/2018. ESRI recomienda a los clientes cambiar los archivos ASR por el nuevo marco: archivos de licencia segura de ESRI (ESLF) para ArcGIS Engine 10.1 y versiones posteriores.
Obtener ayuda de expertos en ArcGIS
Descargar la aplicación de soporte de Esri