2009-09-10 8 views
0

J'ai fait une DLL .NET et le mettre dans le dossier system32 et RegAsm dans un serveur win2003.Comment accéder au système de fichiers depuis une DLL .NET appelée par ASP classique?

Une des API de cette DLL est de créer un fichier dans le dossier c: /. Et quand je l'appelle cette API à partir d'un script ASP classique, toujours obtenir cette erreur

System.IO .__ Error.WinIOError

Ainsi, le processus dll ou asp n'a pas le privilège d'un accès suffisant? Comment lui donner l'accès en écriture?

Merci

[Modifier] Le dll est appelé dans une page ASP, en cours d'exécution dans un navigateur.

[Editer] Quelqu'un peut-il aider?

+2

Je suppose que l'utilisateur qui exécute l'application n'a pas accès. –

+0

@ James Black: aurait dû poster une réponse –

Répondre

0

Vous trouverez peut-être quelques-unes des informations contenues dans ce message utile:

Accessing a .NET Assembly from classic ASP

Regardez ce que l'utilisateur de votre application asp classique est en cours d'exécution sous (regarder la piscine app) et autoriser l'accès à cet utilisateur à le dossier dans lequel vous essayez de créer des fichiers.

Etes-vous sûr que l'erreur est générée à partir de la DLL et non parce que vous ne pouvez pas accéder à la DLL elle-même? Si possible, mettez une méthode simple comme Ping ou quelque chose qui renvoie une chaîne ("Bonjour!") Et voyez si cela fonctionne. De cette façon, vous saurez au moins que vous pouvez accéder à la DLL et exécuter des méthodes.

0

ajoute l'autorisation à ASPNET ou au service réseau (en fonction de la version d'IIS). Vous pouvez également modifier l'identité du pool d'applications dans IIS.

Questions connexes