2010-07-01 12 views
0

J'ai créé un travail du minuteur (via Feature Deployment) qui crée un fichier dans le système de fichiers du serveur hôte.Sharepoint Timer Le processus de travail ne libère pas le fichier (IOException)

private static void myMethod(Byte[] results, string fileName) 
{ 
    using (FileStream stream = File.OpenWrite(fileName)) 
    { 
     stream.Write(results, 0, results.Length); 

     stream.Close(); 
     stream.Dispose(); 

    } 

} 

également FileAccess.Write, FileShare etc. dans le constructeur FileStream ne fonctionne pas. Le fichier créé ne peut pas être supprimé ni dans le processus de temporisation ni avec les privilèges d'administrateur dans l'Explorateur Windows tant que le service de temporisation n'a pas été redémarré.

Le travail du minuteur a été exécuté via NETWORKService.

Dans une application de console (exécute le même code sous Privilèges d'administrateur), il fonctionne correctement.

J'ai décidé de créer temporairement des fichiers aléatoires dans le système de fichiers pour résoudre mon problème rapidement, mais ce n'est pas le meilleur des cas.

Répondre

0

Lorsque vous utilisez le mot-clé que vous n'avez pas besoin d'appeler disposer, comme le fait pour vous.