# Systmes > Windows > IIS > [IIS 7] Excution DLL ISAPI

## curt25

Bonjour,

Je suis confront  un souci, jai cr un service web en DELPHI, je lai compil en application ISAPI, ce qui a cr une DLL.
Mon problme cest que je narrive pas  excuter la DLL via IIS 7. 
Quand je lance lurl : http://localhost/test/p_serveur_euro_dollar_dll.dll/ il maffiche une erreur 500.0
Est-ce que quelquun aurai une procdure pour ce genre de problme ?
Merci pour votre aide !

----------


## darkendorf

Je dois comprendre que tu as appel ton service "test" dans IIS...

Accde  http ://localhost/"nom du service configur dans IIS"/p_serveur_euro_dollar_dll.dll/wsdl

Tu obtiens une liste de services normalement. ensuite pour le dialogue, c'est un peu plus compliqu, on verra ensuite en fonction de ton rsultat.

PS : tu as cr un filtre ISAPI dans IIS ????

----------


## curt25

Bonjour,

Oui j'ai cr un rpertoire virtuel nomm "TEST" qui pointe vers le rpertoire physique qui contient ma DLL.

J'ai essay d'ajouter /wsdl mais toujours la mme erreur.

Et j'ai galement crer un filtre ISAPI et j'ai ajouter un "Handler Mapping" de type CGIModule. pour toutes les extensions *.dll.

Merci pour votre aide.

----------


## darkendorf

le paramtre TargetNamespace de l'objet WSDLHTMLPublish correspond bien au lien dans le serveur (localhost apparemment dans ton cas) ?
l'utilisateur IUSR (ou le groupe IIS_IUSR je ne sais plus... ^^ ) a-t-il les droits ncessaires ? c'est l'quivalent de IUSR_machine de IIS 5-6
Dans les proprits de "TEST" dans IIS, sous le nom d'application il y a une "Autorisation d'excution" : scripts et excutables.

----------


## curt25

le paramtre TargetNamespace  doit bien correspondre oui au localhost puisque au paravant j'ai compil le service avec WAD et tout fonctionnait parfaitement.
J'ai bien ajouter l'utilisateur IIS_IUSRS au rpertoire de ma DLL. 
Mais je me demande si j'ai bien fait avec le Handler mapping ?

----------


## curt25

J'ai du nouveau, j'ai une autre erreur, je sais pas si j'ai avanc ou recul !
voici mon erreur :
HTTP Error 404.2 - Not Found
The page you are requesting cannot be served because of the ISAPI and CGI Restriction list settings on the Web server.

----------


## curt25

Je suis revenu a ma premire erreur en fait !
J'ai cette erreur : "une erreur de serveur interne s'est produite."

Y a-t-il quelques chose  faire avec le "handler mappings" pour les extensions *.dll ?

Quelqu'un aurait-il une ide ?

Merci pour votre aide.

----------


## darkendorf

dans le mappage, slectionne ton filtre ISAPI-dll et clique  droite sur "Modifier les autorisations de fonction...", vrifie que Excution est coch

----------


## curt25

oui j'ai bien read-script et execute !
j'ai ajout un "ISAPI filter" et un "ISAPI and CGI restrictions " mais toujours la mme erreur !

Merci pour ton aide en tout cas darkendorf.

----------


## curt25

Re,

Je ne sais pas vers quel fichier il faut que je map pour les extension *.dll.
par exemple : les fichiers .asp doivent mapper vers le fichier %windir%\system32\inetsrv\asp.dll.

J'ai essay le fichier %windir%\system32\inetsrv\isapi.dll. mais il me dit que la ressource demande pointe vers un fichier .dll qui ne peut pas traiter la demande.

Merci pour votre aide.

----------


## curt25

Bonjour,

Excusez-moi d'insister mais j'aimerais savoir si quelqu'un connait le fichier pour mapper les extensions *.dll dans IIS 7 ?

J'ai juste fait un service qui affiche un message et j'arrive  excuter cette dll dans une ancienne version de IIS sous Win2000, mais pas dans ISS 7.

Merci pour votre aide.

----------


## suchiwa

> Bonjour,
> 
> Excusez-moi d'insister mais j'aimerais savoir si quelqu'un connait le fichier pour mapper les extensions *.dll dans IIS 7 ?
> 
> J'ai juste fait un service qui affiche un message et j'arrive  excuter cette dll dans une ancienne version de IIS sous Win2000, mais pas dans ISS 7.
> 
> Merci pour votre aide.


Bonjour,

Tu es sous Windows 2008 Server R2 ?
Cr un nouveau applicationPool, dans les paramtres avancs, force le champs suivant "Enable32bit..." sur "True" (ou "1")

Affecte ton ApplicationPool  ton site web et ajoute ta dll.

Par dfaut, tu utilises bien un applicationPool intgr, pas classic ?

Vincent

----------

