mikrocontroller.net

Forum: PC-Programmierung VB meine ersten Zeilen ---> Fehlermeldung :-)


Autor: K. F. (packet)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo PC-Programmierung Board,

ich wollte heute ein VB-Script statt einer Batch einsetzen.

Das Script soll eine Datei auf eine bestehende Datei kopieren und 
anschliessend ein Programm starten... Eigentlich Peanuts...

Ich schrieb folgendes VB-Script:

FileCopy "C:\WINPROG\WEBRADIO\SCREAMER.BAK", 
"C:\WINPROG\WEBRADIO\SCREAMER.XML"
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "C:\WINPROG\WEBRADIO\screamer.exe",1

Der Programmstart alleine über

Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "C:\WINPROG\WEBRADIO\screamer.exe",1

läuft einwandfrei.

Wenn ich aber den FileCopy Befehl vorher einsetze, kommt die 
Fehlermeldung für diese Zeile???!!!

Fehler:  Typen unverträglich: ´FileCopy´
Code:    800A000D


Was mache ich falsch??? :-)

Autor: tastendrücker (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich kann mich auch irren, aber es könnte sein, dass du ein "_" am Ende 
einer Zeile setzen musst, wen die Anweisung in der nächsten Zeile 
fortgesetzt wird.

Also so
FileCopy "C:\WINPROG\WEBRADIO\SCREAMER.BAK", _
"C:\WINPROG\WEBRADIO\SCREAMER.XML"
oder in einer Zeile
FileCopy "C:\WINPROG\WEBRADIO\SCREAMER.BAK", C:\WINPROG\WEBRADIO\SCREAMER.XML"

Autor: Felix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"...VB-Script statt einer Batch einsetzen..."

Lol! Mach was anständiges und ärger dich nicht mit so scheiß rum.

Autor: K. F. (packet)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ tastendrücker,

...die Anweisung steht im Script schon kpl. in einer Zeile.
Der Editor vom Forum hat die Zeile nur gesplittet...

@ Felix

"Lol! Mach was anständiges und ärger dich nicht mit so scheiß rum."

...Vorschläge...


Gruss packet.

Autor: Uhu Uhuhu (uhu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gibts denn FileCopy überhaupt? - Bin zwar kein VBScript-Fan, für JScript 
benutze ich aber immer CopyFile von Scripting.FileSystemObject.

Das hat noch einen dritten Parameter overwite - wenn der true ist, wird 
eine existierende Datei gleichen Namens überschrieben.

Scripting.FileSystemObject mußt du dir - wie shell auch - erst mit 
CreateObject holen.

Die Fehlermeldung ist hier beschrieben: 
http://www.asphelper.de/ASPFehlercodes/Default.asp...

Autor: K. F. (packet)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uhu Uhuhu wrote:
> Gibts denn FileCopy überhaupt? - Bin zwar kein VBScript-Fan, für JScript
> benutze ich aber immer CopyFile von Scripting.FileSystemObject.
>
> Das hat noch einen dritten Parameter overwite - wenn der true ist, wird
> eine existierende Datei gleichen Namens überschrieben.
>
> Scripting.FileSystemObject mußt du dir - wie shell auch - erst mit
> CreateObject holen.
>
> Die Fehlermeldung ist hier beschrieben:
> http://www.asphelper.de/ASPFehlercodes/Default.asp...

...soll es geben laut http://www.vbarchiv.net/commands/FileCopy.php

...kenn mich eben mit der VB-Syntax nicht aus. Programmierte vor grauer 
Vorzeit in GFA-Basic unter Atari ST... Und habe auch GFA mit 
Vollcompiller für DOS.

Für solche "kleinigkeiten" habe ich bisher nur mit Batch-Dateien und DOS 
Befehlen gearbeitet.

Autor: tastendrücker (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>"Lol! Mach was anständiges und ärger dich nicht mit so scheiß rum."

>...Vorschläge...


http://www.autoitscript.com/

Autor: Uhu Uhuhu (uhu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
K. F. wrote:
> ...soll es geben laut http://www.vbarchiv.net/commands/FileCopy.php

Das bezieht sich aber auf VB4 - VB6 -- das ist was anderes als VBScript.

Der Copy-Befehl in VBScript müßte lauten:

   Set fso = CreateObject("Scripting.FileSystemObject")
   fso.CopyFile "C:\WINPROG\WEBRADIO\SCREAMER.BAK", _
      "C:\WINPROG\WEBRADIO\SCREAMER.XML", 1

Autor: K. F. (packet)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Uhu Uhuhu wrote:
> K. F. wrote:
>> ...soll es geben laut http://www.vbarchiv.net/commands/FileCopy.php
>
> Das bezieht sich aber auf VB4 - VB6 -- das ist was anderes als VBScript.
>
> Der Copy-Befehl in VBScript müßte lauten:
>
>    Set fso = CreateObject("Scripting.FileSystemObject")
>    fso.CopyFile "C:\WINPROG\WEBRADIO\SCREAMER.BAK", _
>       "C:\WINPROG\WEBRADIO\SCREAMER.XML", 1

AHAAAAAAAAA!

...mit Deinem Code klappts....SUPER!

Wo bekomme ich weitere Infos zu VB-Script?


Gruss packet...

Autor: Uhu Uhuhu (uhu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Z.B. in der VisualStudio-Hilfe unter Web Development | Scripting.

Das Ganze gibts auch auf dem Web:
http://msdn.microsoft.com/en-us/library/ms950396.aspx

Autor: K. F. (packet)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
...habe selbst was zu VB-Script gefunden...

http://www.asphelper.de/referenz/vbscript/default.asp


Nochmals vielen Dank für eure Hilfe!!!




Gruss packet

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.