Dans le cadre de la migration d’une application existante vers Windows Azure j’ai
été confronté à ce message d’erreur :
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>