Hallo, Ich brauche ein VBS Skript zum Speichern von Dateien. Es soll den Pfad in eine TXT-Datei Schreiben. Vielen Dank für euere Hilfe.
Und wo liegt jetzt Dein Problem? Wer soll dieses Skript wann und wie und warum aufrufen? Und welchen Pfad meinst Du? Welchen Teil der VBS-Dokumentation verstehst Du nicht?
Ich will das wenn ich diese VBS-Datei Starte, Ein Fenster mit SPEICHERN UNTER... aufgeht und diesen Pfad in einer TXT-Datei Speichert
Aha. Nun, das ist nicht ganz einfach; Du musst herausfinden, wie Du per Automation Windows bzw. ein darunter installiertes Programm dazu bekommst, den Datei-speichern-unter-Dialog anzuzeigen. Das Resultat in eine Datei zu schreiben ist hingegen trivial. Die Laufzeitumgebung von VBS (der "Windows Scripting Host", cscript.exe bzw. wscript.exe) sieht selbst keine Möglichkeit vor, auf GUI-Elemente und -Dialoge zuzugreifen, wscript.exe kann lediglich einfache Messageboxen erzeugen, die aber nur einen Text und einen OK-Knopf enthalten. Der Weg jedenfalls ist nicht einfach: http://stackoverflow.com/questions/4386124/how-can-i-use-the-common-save-as-dialog-from-vbscript
Rufus Τ. Firefly schrieb: > Die Laufzeitumgebung von VBS (der "Windows Scripting Host", cscript.exe > bzw. wscript.exe) sieht selbst keine Möglichkeit vor, auf GUI-Elemente > und -Dialoge zuzugreifen, wscript.exe kann lediglich einfache > Messageboxen erzeugen, die aber nur einen Text und einen OK-Knopf > enthalten. Doch, mann Kann mit wscript.exe Dialog-Boxen erzeugen Hat nicht jemand einen Code dafür mit einer Anderen Programmier Sprache?
Jakob P. schrieb: > Doch, mann Kann mit wscript.exe Dialog-Boxen erzeugen Kann man eben nicht, bzw. nur über den Umweg der Nutzung fremder Automationsserver. Das ist ja die Crux. Wozu soll Dein Skript da eigentlich dienen, und warum muss das VBS sein?
Ich will in einem Selbstgebauten Programm eine einfache Möglichkeit, eine Festplatte auszuwählen,auf der Festplatte soll eine Config.txt gespeichert werden: Mir geht es darum das Ich den Wert in einer TXT speichern kann. die Programmier Sprache dabei ist mit egal, VBS ist leichter zu verändern.
Jakob P. schrieb: > Ich will in einem Selbstgebauten Programm > eine einfache Möglichkeit, eine Festplatte > auszuwählen Dann mach das doch einfach in Deinem "selbstgebauten Programm", indem Du die dafür gedachten Funktionen der Windows-API verwendest: https://msdn.microsoft.com/en-us/library/bb762115%28VS.85%29.aspx
Ich habe einen Code! MsgBox BrowseForFile Set FSO = CreateObject("Scripting.FileSystemObject") Set MyFile = FSO.CreateTextFile("c:\users\Jakob\Desktop\Testdatei.txt ", TRUE) MyFile.Close Function BrowseForFile() Dim shell : Set shell = CreateObject("Shell.Application") Dim file : Set file = shell.BrowseForFolder(0, "Choose a file:", &H4000) BrowseForFile = file.self.Path End Function Set MyFile = FSO.OpenTextFile("c:\users\Jakob\Desktop\Testdatei.txt", 8) MyFile.WriteLine (BrowseForFile) MyFile.WriteLine ("Ende") MyFile.Close aber er öffnet 2 mal das Fenster: wie bekomme ich das weg? das erste fenster macht nichts nur das 2te schreibt
Lies Dir doch einfach mal Deinen "Code" durch, und versuch selbst rauszufinden, was der macht. Und sieh Dir mal grundlegendes zur Syntax von VBS an; was sind Funktionen, wo deklariert man sie, und wie sieht der allgemeine Programmfluss aus? Und was geschieht, wenn man den gleichen Code zweimal hinschreibt?
Jakob P. schrieb:
>Mir geht es darum das Ich den Wert in einer TXT speichern kann.
Was ist mit Wert gemeint?
Jakob P. schrieb:
>Es soll den Pfad in eine TXT-Datei Schreiben.
dir /s /b /a-d > c:\users\Jakob\Desktop\Testdatei.txt
Damit werden alle Dateinamen mit Pfadangabe
aus allen Ordnern und Unterordnern
in Testdatei.txt gespeichert. Wenn du diese
Befehlszeile in eine *.bat datei schreibst
sparst du auch noch Tiparbeit beim Aufruf.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.