2009-11-10 5 views
1

Ce problème n'a rien à voir avec si les assemblys ont été signés ou caspol a été exécuté pour le dossier réseau partagé. Apparemment, l'emplacement des fichiers est le problème, mais je ne peux pas trouver quel est le vrai problème..NET 3.5 Code SP1 à partir du réseau - "Le système ne peut pas trouver le fichier spécifié."

J'ai un exécutable qui référence 5 dll. Je peux exécuter l'application à partir d'un lecteur local sans aucun problème. Lorsque j'exécute l'application à partir d'un partage réseau, j'obtiens une erreur indiquant que "Impossible de charger le fichier ou l'assembly" homer, Version = 1.0.0.0, Culture = Neutre, PublicKeyToken = null "ou l'une de ses dépendances. le fichier spécifié. "

Si tous les fichiers se trouvent dans le même dossier, qu'est-ce que l'erreur me dit vraiment?

Je dois également noter que l'infrastructure utilisée est 3.5 SP1, ce qui ne nécessite pas de changer la politique d'accès au code. J'avais essayé de toute façon, et j'ai reçu la même erreur dans les deux cas.

Merci, DaMoose

+0

Cela peut être une chasse aux oies sauvages, mais avez-vous vérifié s'il y a des espaces dans le chemin? Comme "\\ serveur \ un partage \ nom de fichier \"? Si c'est le cas, essayez un chemin sans espaces. –

+0

Aucun espace n'est dans le chemin. J'essaie de les éviter en règle générale. – DaMoose

Répondre

0
+0

Oui, j'avais signé tous les assemblages et j'avais lancé caspol pour permettre l'exécution du code à partir d'un partage réseau. J'ai toujours eu une erreur que le fichier n'a pas pu être trouvé. – DaMoose

0

Vous devez essentiellement signer vos assemblées. Générer une des clés privées/publiques paire avec

sn -k filename.snk 

Le filename.snk sera précisé dans le projet prperties (clic droit sur le projet puis sélectionnez Propriétés).

Si vous n'obstruez pas votre code, vous pouvez vous y prendre. Si vous le faites, vous devez "retarder la signature" des assemblages, c'est-à-dire réserver de l'espace pour la clé dans le nouveau fichier exécutable. Ensuite, vous devez appeler

sn -r filename.snk 

pour annuler l'exécution après l'obfuscation.

+0

Oui, j'avais signé tous les assemblys et j'avais lancé caspol pour permettre l'exécution du code à partir d'un partage réseau. J'ai toujours eu une erreur que le fichier n'a pas pu être trouvé. – DaMoose

0

Comment les assemblys sont-ils allés à ce partage réseau? Avez-vous simplement les copier ou quelque chose d'autre? Une fois que j'ai eu un problème lorsque j'ai téléchargé mes propres assemblys à partir de mon propre serveur Web, l'explorateur a ajouté l'indicateur "bloqué" (fonction de flux ntfs) aux fichiers téléchargés, générant essentiellement des exceptions FileNotFound.

+0

J'ai copié les fichiers du lecteur local sur le réseau. – DaMoose

+0

Okay. Que procmon.exe vous dit si vous ajoutez un filtre (Path - containst - votre nom d'exe). Peut être refusé aussi. Obtenez Procmon d'ici: http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx – iwo

Questions connexes