vbs Ausgabe in Textdatei umleiten!
-
Hallo, ich habe mir folgendes ausgedacht:
strComputer = "."
Set objWMIService = GetObject("winmgmts:\" & strComputer & "\root\cimv2")
Set IPConfigSet = objWMIService.ExecQuery _
("Select IPAddress from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
For Each IPConfig in IPConfigSet
If Not IsNull(IPConfig.IPAddress) Then
For i=LBound(IPConfig.IPAddress) to UBound(IPConfig.IPAddress)
WScript.Echo ("Deine IP ist: ") & IPConfig.IPAddress(i)Next
End If
NextDim net, shell
set net = Wscript.CreateObject("Wscript.Network")
set shell = WScript.CreateObject("WScript.Shell")
Set objSysInfo = Wscript.CreateObject("ADSystemInfo")MsgBox "und dein Benutzername ist: " & (net.UserName) & "! " & vbCr
und möchte jetzt das er das:
MsgBox "und dein Benutzername ist: " & (net.UserName) & "! " & vbCr
WScript.Echo ("Deine IP ist: ") & IPConfig.IPAddress(i)(natürlich nicht den Befehl, sondern das was er tatsächlich auch in der Box ausgeben würde!)
in einer Textdatei die natürlich im selben Verzeichniss liegt speichert, aber ich kriege das irgendwie nicht hin. Und die einzige Hilfe die ich zu dem Thema gefunden habe ist auf der Microsoft Seite und ihr könnt euch ja sicherlich vorstellen wie gut das erklärt ist, das ist in etwa so als ob man einem Esel ein Note book vorlegt :D. Ich hoffe ihr könnt mir bei der Lösung des Problems helfen.
Mfg: Lutz
-
Wenns ne konsolenanwendung unter windows ist einfach app.exe >> text.txt. Dann wird die komplette Ausgabe des Progs, die sonst in die Konsole gehen würde in text.txt geschrieben. Mit der Messagebox weiß ich nich
-
Bei welcher Programmiersprache soll das denn funktionieren? Das was ich da oben gepostet habe ist ein vbs bzw wsh script und das ist mit der Messagebox (sieht man hier: MsgBox "......) Aber na ja trotzdem danke für deine Antwort, aber die richtige Lösung für mein Problem ist das nicht!
-
Nebenbeibemerkt funzt das bei jedem Programm egal in welcher Programmiersprache. Probier mal dir C:\ >> bla.txt
-
Gerade ergoogelt:
Dim fso, fsoFile, Pfad
Pfad = "C:\Test.txt"'Objekte erstellen
set fso = Server.CreateObject("Scripting.FileSystemObject")
set fsoFile = fso.CreateTextFile(Pfad, true)'Text in Datei schreiben
fsoFile.WriteLine("Heute ist der: " & now)'TextDatei schliessen und Objekte terminieren
fsoFile.close
set fsoFile = nothing
set fso = nothing
-
Das sieht schon mal gut aus, und jetzt habe ich auch verstanden wie du das mit dinem Befehl meinst, (app.exe >> text.txt) aber das ist nicht das was ich will. Aber zu der zweiten Lösung habe ich noch eine Frage unzwar was muss ich noch machen damit diese Fehler meldung nicht mehr erscheint?
Objekt erforderlich: 'Server' sowie Objekt erforderlich: 'fso'
Ich weiß nur nicht was ich ihm verfügbar machen muss damit es funktioniert. (Ich habe gerade erst mit vbs und wsh angefangen!) Ich hoffe ihr könnt mir dann auch bei diesem hoffentlich letztem Schritt noch einmal helfen!
-
Das scheint wohl für Server Scripting gedacht zu sein.
Für lokal müsstest Du einfach mal nach "writing a file" googlen.
Habe genau NULL Ahnung von VB(Script).
-
Na ja trotzdem danke für die Antwort, vielleicht kann ja jemand anderes weiter helfen!
-
Fürs "FileSystemObject" brauchst du eine registrierte Scripting Runtime
(scrrun.dll).Schreiben geht auch so:
ff = Freefile() 'verfügbares Dateihandle holen Open "C:\Test.txt" For Output As #ff ' erstellt ein neue Datei für zum schreiben bzw. überschreibt vorhandene ' Achtung : Zeilenmodus Write #ff, "Teststring" Close #ff
Für binäres schreiben/lesen so:
ff = Freefile() 'verfügbares Dateihandle holen Open "C:\Test.txt" For Binary As #ff Put #ff, , "Blah" Put #ff, , 5 Close #ff
-
Was mache ich denn jetzt schon wieder falsch? er sag mir jetzt immer bei zeile 2 zeichen 22 anweisungsende erwartet (bei beiden varianten) ich habe schon verschiedene dienge probiert, um diesen fehler zu beheben aber es gelingt mir nicht bitte helft mir!
-
Probiers mal hiermit:
http://de.wikibooks.org/wiki/Visual_Basic_Script_(VBS):_Beispiele#8._Eine_Textdatei_erstellen
Maile mir wenns klappt oder nicht!
E-mail: luca.abele@yahoo.com