Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Visual Basic 2008 Kopiert nur eine Datei aus ListBox-Inhalt anstatt alle

Frage Entwicklung Visual Studio

Mitglied: 69304

69304 (Level 1)

29.03.2009, aktualisiert 15:09 Uhr, 5473 Aufrufe, 2 Kommentare

For-Schleife aus ListBox mit CopyFile()

Hallo!

Ich bin gerade dabei einen Datei Umbenenner zu basteln. Hab auch schon soweit alles fertig.

Zum Funktions-Prinzip

Verzeichnis wird ausgelesen und in ListBox ausgegeben, danach wird das Verzeichnis noch Mal eingelesen und über div. String-Replace-Routinen geschickt und in einer zweiten ListBox als "Vorschau" ausgegeben.


Das Problem ist, dass dann beim kopieren...

Vom Prinzip in DOS: copy dateialt.txt dateineu.txt


Mein Code dazu:

01.
Private Sub cmdDo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdDo.Click 
02.
        Dim DateinameAlt As String 
03.
        Dim DateinameNeu As String 
04.
 
05.
        If lstDateien.Items(0).ToString() = "" And lstNeu.Items(0).ToString() = "" Then 
06.
            MsgBox("Noch keine Vorschau ausgeführt!", MsgBoxStyle.OkOnly Or MsgBoxStyle.Critical) 
07.
            Exit Sub 
08.
        End If 
09.
 
10.
        For i As Integer = 1 To lblZaehler.Text Step 1 
11.
            DateinameAlt = txtPfad.Text & "\" & lstDateien.Items(0).ToString() 
12.
            DateinameNeu = txtPfad.Text & "\" & lstNeu.Items(0).ToString() 
13.
            'Movefile(DateinameAlt, DateinameNeu) 
14.
            My.Computer.FileSystem.CopyFile(DateinameAlt, DateinameNeu, True) 
15.
        Next i 
16.
        MsgBox("Fertig!", MsgBoxStyle.OkOnly Or MsgBoxStyle.Information) 
17.
End Sub

Das Problem ist nun, dass er immer nur die erste Datei des Verzeichnisses wie gewünscht kopiert.

Hat da wer ´ne Idee?


Gruß,
René.


P.S.: Wenn wir gerade dabei sind, alternativ würde es mir auch reichen, die Datei einfach nur umzubenennen. Move() geht leider nicht.
Mitglied: bastla
29.03.2009 um 16:17 Uhr
Hallo rbrixel!

Versuch es mit folgenden Zeilen 11 und 12
DateinameAlt = txtPfad.Text & "\" & lstDateien.Items(i -1).ToString() 
DateinameNeu = txtPfad.Text & "\" & lstNeu.Items(i-1).ToString()
[Edit] Ergänzung:
Move() geht leider nicht.
Sollte es aber eigentlich:
My.Computer.FileSystem.MoveFile(DateinameAlt, DateinameNeu, True)
Abgesehen davon gäbe es ja ohnehin die "RenameFile"-Methode, daher:
My.Computer.FileSystem.RenameFile(txtPfad.Text & "\" & lstDateien.Items(i -1).ToString(), lstNeu.Items(i-1).ToString())
[/Edit]

Grüße
bastla
Bitte warten ..
Mitglied: 69304
29.03.2009 um 16:24 Uhr
oh mein *... klar. es war logischerweiße zu einfach...

sehs gerade auch, nachdem ich breakpoints eingefügt habe... thx.


noch mal für alle, so funktionierts dank bastla:

01.
For i As Integer = 1 To lblZaehler.Text Step 1 
02.
       DateinameAlt = txtPfad.Text & "\" & lstDateien.Items(i - 1).ToString() 
03.
       DateinameNeu = txtPfad.Text & "\" & lstNeu.Items(i - 1).ToString() 
04.
       My.Computer.FileSystem.CopyFile(DateinameAlt, DateinameNeu) 
05.
Next i
Bitte warten ..
Ähnliche Inhalte
Basic
gelöst Mit Visual Basic Batch Datei öffnen (26)

Frage von Flodsche zum Thema Basic ...

VB for Applications
gelöst Visual Basic persönliche MSTSC Verbindung (3)

Frage von florianza zum Thema VB for Applications ...

Visual Studio
gelöst Remotedienst prüfen mit Visual Basic (1)

Frage von flyingmichael zum Thema Visual Studio ...

Visual Studio
Mit Visual Basic auf Shopware 5 API zugreifen (9)

Frage von SmogKiel zum Thema Visual Studio ...

Heiß diskutierte Inhalte
Windows 7
gelöst BOOTMGR is missing (auch nach bootrec -RebuildBcd) (20)

Frage von Mipronimo zum Thema Windows 7 ...

Router & Routing
Tipps für Router (ca. 100 clients, VPN) (19)

Frage von oel-auge zum Thema Router & Routing ...

Windows Userverwaltung
Windows Freigabe: Zugriff auf alle Ordner trotz Sicherheitseinstellungen (17)

Frage von Pandreas zum Thema Windows Userverwaltung ...

TK-Netze & Geräte
gelöst Convert von TAPI auf CAPI gesucht (13)

Frage von StefanKittel zum Thema TK-Netze & Geräte ...