Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Variable HOMEPATH an CMD übergeben

Mitglied: DonSimeo

DonSimeo (Level 1) - Jetzt verbinden

24.05.2007, aktualisiert 26.05.2007, 10682 Aufrufe, 7 Kommentare

Guten Tach,

ich würde gern in vb6 eine Textdatei per cmd in das verzeichnis %HOMEDRIVE%%HOMEPATH% schreiben lassen. (Das kann man ja einfach so text > "%HOMEDRIVE%%HOMEPATH%\text.txt" in cmd eingeben.) Aber irgendwie nicht aus vb6??

Also: Shell "cmd.exe /k " & " Text" & " > " & "%HOMEDRIVE%%HOMEPATH%\Text.txt"

funktioniert nicht... variablen kann man scheinbar auch nicht übergeben und selbst:

Shell "cmd.exe /k " & " Text" & " > " & "C:\Dokumente und Einstellungen\User\Text.txt"

geht nicht.

Kann mir jemand sagen was ich falsch mache?
Mitglied: AndreasHoster
24.05.2007 um 09:13 Uhr
Ja, kann ich.
1. Fehler:
Schon Dein Beispiel text > "%HOMEDRIVE%%HOMEPATH%\text.txt" geht nicht. Es muß echo text > "%HOMEDRIVE%%HOMEPATH%\text.txt" heißen.
2. Fehler (Fehler 1 habe ich für Dein Beispiel schon korrigiert):
Shell "cmd.exe /k echo" & " Text" & " > " & "%HOMEDRIVE%%HOMEPATH%\Text.txt" ergibt als Befehlszeile: echo Text > %HOMEDRIVE%%HOMEPATH%\Text.txt
Wenn Du das mit Deinem Beispiel vergleichst, wirst Du feststellen, daß es nicht daselbe ist. Es fehlen nämlich die Anführungszeichen um %Homedrive... die man braucht, weil in HomePath nämlich Leerzeichen drinvorkommen.
Also:
Shell "cmd.exe /k echo" & " Text" & " > " & """%HOMEDRIVE%%HOMEPATH%\Text.txt"""
Und Variablen tun, wenn man es richtig macht.
3. Anmerkung:
Wieso cmd /k?
mit cmd /k bleibt die Kommandozeile offen nach Ausführung des Befehls. Ist das so gewünscht? mit cmd /c wird sie nach dem echo Befehl geschlossen.
Bitte warten ..
Mitglied: DonSimeo
24.05.2007 um 09:42 Uhr
juchuu,

es funktioniert!! Ach herrlich das es Menschen gibt die wissen und helfen, wenn man selbst nicht weiter kommt. Danke.

Das echo habe ich weggelassen weil mir die CMD net view ausführt (tschuldigung). /k dachte ich muss rein um die cmd mit Parametern zu starten, und geschlossen habe ich sie am Ende der Zeile mit ,vbHide da sieht man sie nicht einmal (oder bleibt sie dann im Hintergrund geöffnet?).

Wünsche einen schönen Tag, Gruß Simi.
Bitte warten ..
Mitglied: DonSimeo
24.05.2007 um 10:24 Uhr
Oh,
ich sehe gerade, bei /k und vbHide (heißt ja auch nur versteckt) wird der Prozess nicht beendet.
Bitte warten ..
Mitglied: Biber
24.05.2007 um 21:58 Uhr
Moin DonSimeo,

ich weiß nicht, ob es Dich interessiert, aber Du kannst auch aus VB6 (und sogar bei den Leicht-Modellen wie VBSkript) direkt auf die Umgebungsvariablen (neudeutsch: Environment) zugreifen.

Der Umweg über das Schreiben/Lesen einer EnvironmentStrings in eine Textdatei erscheint mir ein wenig umwegig.

Gruss
Biber
Bitte warten ..
Mitglied: DonSimeo
25.05.2007 um 14:54 Uhr
Meinst Du mit Umgebungsvariablen Funktionen wie "Net View"?
Denn darum ging es mir ja...

Wenn ich Net View direkt abgreifen und in eine textbox schreiben könnte, wäre
das natürlich schon praktisch! Momentan schreibe ich's per cmd in eine .txt und lese
diese dann aus...

Kannst mir gerne einen Skript-Ansatz dafür geben, aber jetzt fahre ich ersteinmal in den Urlaub!

Schöne GRüße, Simi.
Bitte warten ..
Mitglied: Biber
25.05.2007 um 18:33 Uhr
Nein, DonSimeo,
Meinst Du mit Umgebungsvariablen Funktionen wie "Net View"?
So etwas meinte ich nicht mit Umgebungsvariablen...
Ich hatte mich an Deiner Überschrift orientiert und war davon ausgegangen, dass entweder
  • VBSkript die Umgebungsvariablen %HOMEDRIVE% / %HOMEPATH% auflösen muss oder
  • CMD.exe die beiden Strings "%HOMEDRIVE%" und "HOMEPATH%" in genau dieser Form zum Interpretieren in die Hand (oder in was auch immer) gedrückt bekommt.

Ihr seid jetzt den zweiten Weg gegangen. Ich meinte nur, der erste wäre auch möglich.

An irgendein "Net View" habe ich nicht im Entferntesten gedacht.

Also: alles ist gut... die Lösung funktioniert und ein grüner Haken ist auch dran...

Dann schönen Urlaub
Biber
Bitte warten ..
Mitglied: bastla
26.05.2007 um 12:56 Uhr
Hallo DonSimeo!

Für nach dem Urlaub :
01.
Set objShell = CreateObject("WScript.Shell") 
02.
Set objWshScriptExec = objShell.Exec("net view") 
03.
Set objStdOut = objWshScriptExec.StdOut 
04.
strOutput = objStdOut.ReadAll 
05.
Text1.Text = strOutput
Falls Du die Zeilen einzeln brauchst, könntest Du so weiter vorgehen:
01.
arLines = Split(strOutPut, vbCrLf) 
02.
For i = 0 To UBound(arLines) 
03.
    MsgBox arLines(i) 
04.
Next
Die MsgBox-Zeile steht stellvertretend für Deine eigentliche Verarbeitung der einzelnen "net view"-Zeilen.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Variable in neues Batch Script übergeben

gelöst Frage von alex89Batch & Shell3 Kommentare

Hallo, ich habe mir ein Batch Script erstellt um einige adminrelevante Tools und Abfragen aus einem Menü heraus zu ...

Batch & Shell

Powershell invoke Command Variablen übergeben

gelöst Frage von H41mSh1C0RBatch & Shell4 Kommentare

Guten Morgen in die Runde, Die Übergabe von Variablen scheint an sich nicht wild: " Mir gibt er gerade ...

Windows Systemdateien

Model mit hilfe vom CMD in eine Variable speichern

gelöst Frage von VidcrafterWindows Systemdateien6 Kommentare

Hallo, ich will das Model eines Rechners auslesen und anschließend in eine Variable speichern.(%Model%) Mit wmic computersystem get model ...

Batch & Shell

Batch: Parameter in einer For Schleife an eine Variable übergeben

gelöst Frage von BatchAnfaenger91Batch & Shell2 Kommentare

Hallo Liebe Leute, nun bin ich fast am Ende und bleibe trotzdem an Parameterübergabe hängen. Hier ist mein bisheriger ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 23 StundenWindows 105 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 1 TagAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 1 TagHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 2 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Hyper-V
Hyper-V mit altem XEON-Server. Was ist falsch?
Frage von LollipopHyper-V11 Kommentare

Hallo Bin etwas frustriert. Kleinbetrieb, ca. 15 PC's, 2 Stk. Server mit einigen virtuellen PC's für Fernwartung, VaultServer für ...

Windows Netzwerk
Backup über WAN
Frage von petereWindows Netzwerk11 Kommentare

Hallo, ich muss aus einem entfernten WAN (synchrone 1Gbit) Daten sichern. Dabei handelt es sich sowohl um wenige große ...