2010-01-25 8 views
1

J'essaie d'appeler LoadLibrary et de charger la DLL Delphi dans l'application ASP.NET. Sur ma machine de production tout fonctionne bien (en utilisant le serveur intégré VS), mais quand je le place sur le serveur de destination, LoadLibrary renvoie IntPtr.Zero. File.Exists(libraryName) renvoie la valeur true. Quel peut être le problème?LoadLibrary de dll non géré renvoie IntPtr.Zero dans l'application ASP.NET

Répondre

1

le plus probable que Delphi dll a une dépendance externe. Si c'était moi, j'écrirais une petite application Delphi pour charger la bibliothèque implicitement. Lorsque vous exécutez cette application d'assistance sur la machine de destination, vous devez obtenir un message d'erreur sur l'écran qui vous donne le nom de la bibliothèque externe manquante.

+0

Vous avez raison. J'avais toutes les dépendances nécessaires dans le même répertoire, mais je ne l'ai toujours pas trouvé. L'extension de la variable% PATH% a résolu le problème. Merci! – LukLed

0

Avez-vous copié la DLL delphi et ses DLL de support sur la machine cible, quelque part dans le répertoire dans lequel s'exécute l'application ASP.NET?

Espérons que cela aide, Cordialement, Tom.

+0

Non, je ne l'avais pas dans le même répertoire, mais il n'y avait pas de problème d'accessibilité. – LukLed