Bonjour
Je souhaite déplacer un fichier d'un dossier A vers un dossier B lorsque ce fichier est détecté dans le dossier A.
Pour cela j'utilise un objet FileSystemWatcher et son évènement "Created" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 FileSystemWatcher^ fsw = gcnew FileSystemWatcher; fsw->Path = A; fsw->Filter = "*.jpg"; fsw->Created += gcnew FileSystemEventHandler(this,&FenetreApp::NewImg_OnCreated); fsw->EnableRaisingEvents = true;Dans le gestionnaire d'évènement je veux déplacer le fichier dans le dossier B.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 void FenetreApp::NewImg_OnCreated(Object^ sender,FileSystemEventArgs^ e) { FileInfo^ f = gcnew FileInfo(e->FullPath); f->Attributes = FileAttributes::Temporary; f->MoveTo(dossierTmpPhotos + L"\\" + f->Name); }
Mais je me heurte au message d'erreur suivant :Comment puis utiliser FileSystemWatcher pour arriver à mes fins ?le processus ne peut pas accéder au fichier E:\Entree\image.jpg parcequ'il est déjà utilisé par un autre processus.
Partager