Anzeige

 [VBS] Schreiben in eine Textdatei


#1
guten tag liebe scripter

ich versuche im moment einen starter für diablo II zu basteln mit einer kombination aus bat und vbs um das einrichten leichter zu gestalten nun brauch ich aber eine zeile

die es mir ermöglicht :

1. einen definierten string in eine datei zu schreiben ( vorzugsweise txt)
2. einen benutzerdefinierten text in genaudieselbe datei und hinter den string zu schreiben ( vorzugsweise txt)

das ganze sollte dann wie folgt aussehen

Code:
set k1=string

also als beispiel:

set k1=C:\dokume\desktop\d2\game.exe
bis jetzt habe ich nur den dialog zusammen um die game.exe zu suchen

mein vbscript sieht wie volgt aus:

Code:
Set ObjFSO = CreateObject("UserAccounts.CommonDialog")
Set WshShell = WScript.CreateObject("WScript.Shell")

ObjFSO.Filter = "Diablo II|game.exe|"

ObjFSO.FilterIndex = 1

ObjFSO.InitialDir = "c:\myscripts"

InitFSO = ObjFSO.ShowOpen

If InitFSO = False Then
    Wscript.Echo "Script Error: Please Keyset 1 Game.exe!"
    Wscript.Quit
Else
 msgbox ObjFSO.FileName
End If
anstelle von
msgbox ObjFSO.FileName
soll nun der teil rein wo ich den string in die dafür vorgesehene datei packen kann...

wäre nett wenn ihr mir helfen könntet
 
Zuletzt bearbeitet:
#2
Moin Nawi,

die Sache ist eigentlich garnicht kompliziert, die Methode Write hast du ja bestimmt schon entdeckt.

Das Problem ist nur, dass du sie nicht auf dein ObjFSO anwenden kannst, weil ObjFSO kein FileSystemObjekt ist, sondern ein CommonDialog.

So sollte es klappen:

Code:
Set fso         = CreateObject("Scripting.FileSystemObject")
Set dlg         = CreateObject("UserAccounts.CommonDialog")
    dlg.Filter  = "Diablo II|game.exe"
    dlgOpen     = dlg.ShowOpen

If dlgOpen = False Then
    Wscript.Echo "Script Error: Please Keyset 1 Game.exe!"
    Wscript.Quit
Else
  Set f = fso.OpenTextFile("c:\testdatei.txt", 2, 1)
      f.Write "set k1 = " & dlg.FileName 
      f.Close
End If
Aaaaaber :-(
Wenn ich mich recht entsinne, ist dieser Dialog(ist ja ein ActiveXControl) kein Standard-Bestandteil von Windows.
Solltest du also vorhaben, dies Skript an andere weiterzugeben, kann es gut sein, dass es bei den anderen nicht funktioniert, weil bei ihnen dieser Dialog nicht verfügbar ist.
 
Anzeige
Anzeige