Kopieren van meerdere bestanden in folder lukt niet :(

Status
Niet open voor verdere reacties.

hanonymouss

Gebruiker
Lid geworden
7 sep 2011
Berichten
283
Hallo allemaal,

Ik probeer een programaatje te maken dat meerdere bestanden kopieert naar een andere folder.

Maar krijg altijd een foutmelding van de exception= "Kan geen toegang krijgen tot het bestand 'bestand' omdat het wordt gebruikt door een andere proces" als ik het wil gebruiken.

Niet werkende code:

[CPP] Dim files As String() = Directory.GetFiles("C:\test", "*.*")

For Each file__1 As String In files
Dim destfile As String = Path.Combine("C:\test1", file__1)

File.Copy(file__1, destfile, True)

MsgBox("gelukt")

Next[/CPP]

Graag jullie hulp
 
Zo op het eerste gezicht zou ik denken mist er niet een \ aan het eind van je strings.
Dus "c:\test\" en "c:\test1\"
 
Weet je zeker dat de bestanden die in de map staan niet gebruikt worden door een ander programma?

MartinJM
 
Nee dit wordt door geen andere programma gebruikt , behalve die van mij. Wat ik nog vreemd vind is wanneer ik de code herschrijf in c# dat het dan wel werkt ?:confused:
 
Laatst bewerkt door een moderator:
Wat is je C# code nu dan, en is de vraag dan niet ook opgelost?
 
Als je beide codes hier post, kunnen wij er pas wat van zeggen ;)
 
Probleem opgelost

Ik heb het probleem gevonden het zat hem gewoon hoe ik mijn for each gebruikte: ik moest dit file_1) naar dit veranderen (file))
dus ook file_1 veranderen naar file
werkende code:

[CPP] Dim files As String() = Directory.GetFiles("c:\Back-Ups", "*.*")
For Each file As String In files
Dim destfile As String = Path.Combine("c:\Test", Path.GetFileName(file))
IO.File.Copy(file, destfile, True)[/CPP]

c# code

[CPP] string[] files = Directory.GetFiles("c:\\Back-Ups", "*.*");
foreach (string file in files)
{
string destfile = Path.Combine("c:\\Test", Path.GetFileName(file));
File.Copy(file_1, destfile);

}[/CPP]

Hartelijk voor jullie reactie :thumb:

Ik denk dat ik de volgende keer meer moet indiepen op de for each; for loop, do while enzoo
 
Kun je de vraag dan even op opgelost zetten? :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan