Required permissions cannot be acquired

Exécuter du code natif sous Windows Azure

Dans le cadre de la migration d’une application existante vers Windows Azure j’ai
été confronté à ce message d’erreur :

Required permissions cannot be acquired

En regardant de plus près la StackTrace, j’ai constaté que cette exception liée donc
à un environnement restreint était causée par le chargement d’une assembly qui était
un wrapper de DLL natives. Après quelques recherches dans les propriétés des projets
de ma solution, j’ai finalement réussi à trouver où activer l’exécution de ce type
de code.

Si vous souhaitez souhaitez exécuter du code en Full Trust et donc activer l’exécution
de code natif, vous devez modifier la définition de votre service et modifier la valeur
de l’attribut enableNativeCodeExecution à true :

<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="DisplayOnTheCloud" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
  <WebRole name="DisplayRole" enableNativeCodeExecution="true">
    <InputEndpoints>
      <!-- Must use port 80 for http and port 443 for https when running in the cloud -->
      <InputEndpoint name="HttpIn" protocol="http" port="80" />
    </InputEndpoints>
    <ConfigurationSettings />
  </WebRole>
</ServiceDefinition>

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *