[VB] Speicherort per script ändern.

08/31/2012 21:38 Recency#1
Hallo,

ich benutze eine bestimmte Downloadsoftware & hatte eine Menge an Dateien auf dem Rechner und habe vergessen diese auf meine Externe zu kopieren.
Daher würde ich mir gerne ein Programm erstellen welches automatisch mit Windows startet und folgendes tut:

Wenn die Externe Festplatte angeschlossen ist soll er dort die Dateien Speichern, wenn diese jedoch nicht angeschlossen ist (=Pfad nicht vorhanden) soll er auf der internen Festplatte speichern und eine Warnung raushauen.

Mein Hauptproblem ist das ich nicht im entferntesten eine Ahnung habe wie ich VB klar mache das er in der datei config.dat sowie config.bak.dat in Zeile xy ab Zeichen xy den Text ändern soll.

Bevor ich nun stunden lang überlege Frage ich einfach hier, ich bin nicht mal sicher ob das geht.
09/03/2012 21:46 WebBotty#2
Wie meinst du dass genau? Ein Beispiel wäre hilfreich
09/03/2012 22:18 Jeoni#3
Ob die Externe angeschlossen ist kannste mit "IO.Directory.Exist("Pfad_zu_einem_Ordner_auf_der_ Externen")" machen. Kopieren von Dateien geht mit "IO.File.Copy(...)" ganz leicht. Ordner kopieren geht, denke ich auch so (eben mit Directory statt File).
Ich verstehe nur gerade nicht, wieso und wann du eine config.dat ändern willst. Das solltest du nochmal näher erläutern ;)
Hoffe, ich konnte helfen
Jeoni
09/04/2012 10:26 WebBotty#4
Ich versuch mich mal.
Also wir haben einen Timer1 mit Intervall 1000 (1 Sekunde) der uns überprüft ob deine Externe Festplatte dran ist.

Quote:
If System.IO.Directory.Exists("C:\") Then 'Anstatt C: eben den Laufwerknamen von deiner Externen Festplatte
MsgBox("Externe Festplatte ist angeschlossen!")
Else
MsgBox("Externe Festplatte ist nicht angeschlossen!")
End If
Kopieren ist ebenso einfach, 1 For Schleife etc...
Quote:
FolderBrowserDialog1.ShowDialog()

Dim sPath as String
sPath = ZielOrdner.SelectedPath
If sPath.EndsWith("\") And sPath.Length > 3 Then
sPath = sPath.Substring(0, sPath.Length - 1)
End If

sPath += "\"

Dim oDir As New System.IO.DirectoryInfo(sPath)

Dim oFiles As System.IO.FileInfo() = oDir.GetFiles("*.jpg") 'oder "*.txt" für Textdateien, gehen auch alle anderen "*" für alle Dateien

Dim oFile As System.IO.FileInfo
For Each oFile In oFiles
Systen.IO.File.Copy(oFile,"Pfad der neuen Datei")
Next