Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Kopieren von Dateien

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Spongebob Schwamm



Anmeldungsdatum: 31.10.2004
Beiträge: 40

BeitragVerfasst am: 13.02.2005, 14:52    Titel: Kopieren von Dateien Antworten mit Zitat

Hi!
Wie kann ich einen Bestimmten Ordner wie z.b. "Eigene Bilder" auf A:(Diskette) Kopieren?

mfg
Spongebob Schwamm
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 13.02.2005, 15:00    Titel: Antworten mit Zitat

Die einfachste methode wäre ein DOS-Shell:

Code:

SHELL "COPY C:\Eigene~1\*.* A:\"


Problem bei der sache:
1) Auf dem Bildschirm erfolgt eine Ausgabe (Kopiere... 1% komplett)
2) Du musst den richtigen DOS-Pfad angeben können.

Für 1) gibts ne bequeme lösung:
Code:

SHELL "COPY C:\Eigene~1\*.* A:\ >NUL"

Dadurch wird die Ausgabe ins nirvana umgeleitet *g*
Für die Pfade müsstest du dir aber was einfallen lassen... nen Dos-Browser z.B. davon gibts ne ganze menge, schau mal auf qbasic.de, da is z.B. einer mit namen .... cdb-box.bas, oder so was...

naja.

ach ja, und wenn du nur bestimmte daten kopieren willst, musst du natürlich das *.* abändern, z.B. *.doc, oder meinbild.jpg


viel spaß mit der methode!
_________________
fully biological degradable

Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 13.02.2005, 15:12    Titel: Kopieren von Dateien Antworten mit Zitat

Hallo!

Ich glaube, in der MonsterFAQ steht da auch was..

Zum DOS-Copy-Befehl:
Der ist sehr lansam. Man kann Dateien auch direkt byteweise kopieren.

Code:

 OPEN FileName1$ FOR RANDOM ACCESS READ AS #1
  OPEN FileName2$ FOR RANDOM ACCESS WRITE AS #2

   DO UNTIL EOF(1)
   
    GET #1, , byte
    PUT #2, , byte
 
   LOOP

 CLOSE


Erklärung:

FileName1$ : Zu kopierende Datei
FileName2$ : Zu erstellende Datei

Hab ich jetzt nicht getestet, müsste aber klappen.

jb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 13.02.2005, 15:51    Titel: Antworten mit Zitat

Hallo.

Nimm anstatt RANDOM lieber BINARY und mach vorher DIM byte AS STRING: byte=SPACE$(1) zwinkern

Viele Grüße!
Sebastian
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Quark48



Anmeldungsdatum: 16.10.2004
Beiträge: 559
Wohnort: Saltendorf a.d. Naab bzw. Teublitz i.d. Oberpfalz / Bayern

BeitragVerfasst am: 13.02.2005, 15:55    Titel: Noch was wichtiges... Antworten mit Zitat

Hallo!

Achtung!
Wenn man einen Dateinamen angibt, muss man für DOS und DOS-Programme eine andere Schreibweise verwenden, wenn man lange Namen für die Dateien und Ordner nimmt (Name selber nicht länger als 8 Zeichen, Leerzeichen usw. mitgezählt) Bei Ordnern gilt das übrigens auch!

Wenn man z.B. eine Datei im Ordner "HallodasisteinTest" auf der Festplatte C hat, und eine Datei namens "Halloistdawer.txt" öffne will, geht das so:

OPEN "C:\Hallod~1\Halloi~1.txt" FOR .....

Wenn es mehrere Ordner und Dateien mit langen Namen und GLEICHEM ANFANG gibt, ändert sich das ~1 z.B. auch mal in ein ~2!

Unter Windows 98 (zumindest) bekommt man den "DOS-Spitznamen" so heraus:
Datei rechts anklicken, Eigenschaften wählen, dann den "MS-DOS-Dateinamen" (Oder ähnliche Bezeichnung, die in dem Fenster dann steht) aufschrieben, fertig!

Und noch einie wichtige Sache bei Dateinamen unter DOS & QB:
Nicht den Strich / (Große 7), sondern den Strich \ (Alt Gr und ß) nehmen!

MfG Quark48
ALias Spangengesicht zwinkern [/code]
_________________
Grüßle, Stefan lächeln
***
Wenn ein Programm auf nem alten Rechner gut läuft, dann läuft´s auf nem neuen erst recht! happy
Ich habe/hatte keine feste Spange und auch keine Schwester. Der Rest stimmt. Es tut mir leid... :-/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 13.02.2005, 16:01    Titel: Antworten mit Zitat

Eine Unschönheit hat die OPEN-basierte Kopierroutine noch: Modifikationsdatum un Dateiattribute entspricht nicht dem Original. Ist aber mit CALL INTERRUPT kein Problem, dieses noch setzen. Siehe dazu

http://beilagen.dreael.ch/QB/DATDEMO.BAS
http://beilagen.dreael.ch/QB/DAT_ATTR.BAS

Hinweise: Im ersteren Fall kann man sich das Auseinanderpflücken des Modifikationsdatums ersparen, in dem man die Register CX und DX 1:1 weiterreicht. Dasselbe auch bei den Attributen mit Register CX.

Unter MS-DOS 6.22 bekommt man damit bereits ein perfektes "-p" (Flag bei UNIX/Linux beim "cp"-Befehl). In Windows 95 müsste man noch auf die erweiterten Funktionen zurückgreifen und das Erstellungsdatum sowie Last Access ebenfalls clonen und ausserdem noch den langen Dateinamen mitübernehmen, wofür es unter

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/win9x/lfn_0het.asp

spezielle CALL INTERRUPTs gibt. Perfektionisten (nur NT 4.0/W2K/XP) wollen vielleicht sogar die ACL-Berechtigungen von NTFS mitkopieren...
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz