J'essaye d'obtenir un processus de travail d'arrière-plan fonctionnant dans une application de wpf. il crée 2 fichiers puis se bloque.Ce qui ne va pas avec ma méthode de travail de fond
BackgroundWorker worker = new BackgroundWorker();
worker.DoWork += delegate(object s, DoWorkEventArgs args)
{
CreateFile(i.ToString());
};
worker.RunWorkerAsync();
private void CreateFile(string fileName)
{
string path = string.Format(@"{0}\{1}.txt", directory, fileName);
using (StreamWriter sw = new StreamWriter(path))
{
sw.WriteLine(fileName);
}
}
Je reçois cette erreur « L'opération demandée ne peut être effectuée sur un fichier avec une section mappée utilisateur ouverte. » Qu'est-ce que je fais mal?
Toute aide serait grande
Réponse sérieuse? À peu près tout. – Pierreten
Qu'est-ce que 'i'? Ce que votre affichage ne créera qu'un seul fichier. Avez-vous plusieurs appels à RunWorkerAsync()? Pouvez-vous expliquer plus de ce que vous essayez de faire? –
1. Qu'est-ce que vous essayez d'atteindre au niveau de la grande image? Il me manque un peu de contexte - comme dans comment sont créés les 2 fichiers/la valeur de la variable dir .. plus de code serait le bienvenu. 2. Pouvez-vous essayer d'identifier le chemin du fichier lorsque le plantage se produit et utiliser ProcExp pour voir quels processus contiennent des poignées au moment du plantage? – Gishu