Jump to content

VBScript externes Programm starten


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo 

 

Bin ganz neu hier und auch ein wirklicher Anfänger! Bitte um Nachsicht, falls ich zu banale Fragen stelle.

 

Ich versuche per *.vbs ein externe Programm zu starten, was mir einfach nicht gelingen will. Viel gegoogelt und auch viele Sachen zu diesem Thema gefunden, aber bei mir hat einfach nichts zum Ziel geführt. 

 

Set wshshell = WScript.CreateObject ("wscript.shell")
wshshell.run "C:\Program Files (x86)\TeamViewer\TeamViewer.exe", 6, True
set wshshell = nothing

 

Beim Aufruf kommt folgende Fehlermeldung:

____________________________

Windows Script Host

Skript:     T:\user\Desktop\tb.vbs

Zeile:       2

Zeichen:  1

Fehler:     Das System kann die angegebene Datei nicht finden.

Code:      80070002

Quelle:    (null)

____________________________

 

Das Programm ist vorhanden und kann auch gestartet werden.

 

Kann mir jemand weiterhelfen?

 

Vielen Dank

SUPATOME

 

 

Link zu diesem Kommentar
vor 15 Stunden schrieb BOfH_666:

Hallo und Willkommen im MCSEboard.

 

Wenn die Nachfrage erlaubt ist ...  muss es unbedingt VBScript sein? Was ist das Ziel des Ganzen?  Willst Du das nur lernen oder soll damit etwas Produktives angestellt werden?

Hallo BofH_666

Auf der einen Seite geht es um Erweiterung meines Wissens und ich versuche immer wieder etwas in meinen Anwendungen zu optimieren. Ich habe ein Access Frontend, welches vom AD verwendet wird, damit sie von unterwegs die Daten replizieren können, suche ich einen Weg und da ist mit TV.exe mit der VPN Verbindung über den Weg gelaufen. 

 

Grüsse

SUPATOME
 

Hallo cj_berlin und Testperson

 

Vielen Dank für die Hilfe, so kann das Programm gestartet werden. 

 

Noch mit einer Zusatzfrage: Ich muss noch 3 Parameter einbauen. "-i 123"  "-P 123"  "-m vpn" was im untenstehenden Versuch nicht klappt.

 

Könnt ihr mir da noch einmal behilflich sein?

 

 

Set wshshell = WScript.CreateObject ("wscript.shell")
wshshell.run """C:\Program Files (x86)\TeamViewer\TeamViewer.exe -i 123 -P 123 -m vpn""", 6, True
set wshshell = nothing

 

Vielen Dank 
SUPATOME

Link zu diesem Kommentar
vor 15 Minuten schrieb SUPATOME:

Auf der einen Seite geht es um Erweiterung meines Wissens und ich versuche immer wieder etwas in meinen Anwendungen zu optimieren. Ich habe ein Access Frontend, welches vom AD verwendet wird, damit sie von unterwegs die Daten replizieren können, suche ich einen Weg und da ist mit TV.exe mit der VPN Verbindung über den Weg gelaufen. 

 

Ich wollte eigentlich darauf hinaus, warum Du unbedingt VBScript nutzen möchtest. Es wird schon seit vielen Jahren nicht mehr weiterentwickelt und ist nur noch aus Kompatibilitätsgründen in Windows enthalten. Wenn Du am Anfang Deiner Karriere stehst und es etwas Sinnvolles für die Zukunft lernen möchtest, wäre das im Bereich Scripting unter Windows eher PowerShell. ;-) 

 

Aber Dein eigentliches Problem wurde ja scheinbar von Evgenij und Jan oben schon identifiziert und korrigiert.  Also alles gut.  ;-):thumb1:

Link zu diesem Kommentar
vor 1 Stunde schrieb SUPATOME:

Noch mit einer Zusatzfrage: Ich muss noch 3 Parameter einbauen. "-i 123"  "-P 123"  "-m vpn" was im untenstehenden Versuch nicht klappt.

Schau dich hier mal um: http://www.dieseyer.de/vbs-erklaeren.html

Die Befehlszeile in eine txt schreiben, den Inhalt auslesen und aufrufen. Ausprobieren, keine Ahnung ob das so funktioniert.

Link zu diesem Kommentar
  • 2 Wochen später...
Am 1.7.2021 um 10:14 schrieb NilsK:

Moin,

 

hm, du verwendest Teamviewer, damit der Außendienst eine VPN-Verbindung herstellt? Das klingt mir nach einer wenig optimalen Lösung. Was sagt denn die IT-Administration dazu?

 

Gruß, Nils

 

Hallo Nils
Danke für deine Antwort.

Verstehe ich.... zum replizieren für mich die einfachste Lösung, dass der AD sich von extern verbinden kann und die Replikation erfolgt. 

Vielleicht nicht die idealste Lösung aber für mein kleines Unternehmen funktioniert sie.

Grüsse
Supatome
 

Am 1.7.2021 um 08:31 schrieb BOfH_666:

 

Ich wollte eigentlich darauf hinaus, warum Du unbedingt VBScript nutzen möchtest. Es wird schon seit vielen Jahren nicht mehr weiterentwickelt und ist nur noch aus Kompatibilitätsgründen in Windows enthalten. Wenn Du am Anfang Deiner Karriere stehst und es etwas Sinnvolles für die Zukunft lernen möchtest, wäre das im Bereich Scripting unter Windows eher PowerShell. ;-) 

 

Aber Dein eigentliches Problem wurde ja scheinbar von Evgenij und Jan oben schon identifiziert und korrigiert.  Also alles gut.  ;-):thumb1:

Hallo BOfH_666

 

Habe deinen Rat befolgt und mich via PowerShell schlau gemacht. 

Dieser Code funktioniert, jedoch habe ich immer noch das gleiche Problem. Ich möchte, dass das Programm im Hintergrund startet, d.h. der User das nicht bemerkt. Habe da viele Sachen gegoogelt, komme aber einfach nicht weiter.

 

Start-Process -FilePath 'C:\Program Files (x86)\TeamViewer\TeamViewer.exe' -ArgumentList '-i 123 -P 123 -m vpn' -NoNewWindow

 

Würde mich sehr freuen wenn mir jemand helfen könnte.

Grüsse

Greenhorn Supatome
 

 

Link zu diesem Kommentar

Ich kann nur nochmal Nils' Einwand unterstützen ... die Idee, die Du hier scheinbar versuchst umzusetzen ist, technisch betrachtet, das falsche Mittel und eventuell lizenzrechtlich problematisch.

 

vor 43 Minuten schrieb SUPATOME:

Ich möchte, dass das Programm im Hintergrund startet, d.h. der User das nicht bemerkt.

 

Und wer oder wodurch soll das Programm dann gestartet werden? Wenn Du etwas unabhängig von einer Interaktion mit einem Menschen auf einem Windows-PC starten möchtest, ist üblicherweise die Aufgabenplanung (Task Scheduler) das Mittel der Wahl. Da brauchst Du aber dann kein Skript drumherum, dort kannst Du die Kommandozeile - also den Aufruf des Programms inklusive der nötigen Optionen - direkt angeben.

Link zu diesem Kommentar

OK, das Teamviewer das falsche Mittel ist habe ich verstanden, was die Lizenzen betrifft, sind diese vorhanden und werden jährlich aktualisiert. 

 

Es geht bei meiner Frage aber nicht um das obenerwähnte Programm, sondern darum wie ich meinen Code ergänzen kann, dass das externe Programm "minimiert" oder "im Hintergrund" startet.

Vielleicht gibt es dazu Hilfe.

 

Start-Process -FilePath 'C:\Program Files (x86)\TV\TV.exe' -ArgumentList '-i 123 -P 123 -m vpn' -NoNewWindow

 

Grüsse

Supatome

Link zu diesem Kommentar
vor 16 Minuten schrieb SUPATOME:

sondern darum wie ich meinen Code ergänzen kann, dass das externe Programm "minimiert" oder "im Hintergrund" startet.

 

Das hängt nicht zuletzt auch vom externen Programm ab.  Wenn die Konsole, aus der Du das Programm startest, im Benutzer-Kontext ausgeführt wird, gilt das auch für das daraus gestartete externe Programm. Und wenn dieses Programm keine Option besitzt, es minimiert oder im Hintergrund zu starten, geht es nicht.

 

Vielleicht lieferst Du uns ein bissl Kontext und erklärst, was Du eigentlich machen möchtest .... nicht das mit dem Programm-Start ... das "Große Ganze" ....  ;-) 

 

 

vor 6 Minuten schrieb tesso:

 

... das hatte ich tatsächlich gar nicht mehr auf dem Schirm  :shy::aetsch2:  ... aber ich hatte auch schon Tools, die sich hartnäckig und erfolgreich dagegen gewehrt haben, so gestartet zu werden, wie ich das wollte.  :wtf::angry2:

bearbeitet von BOfH_666
Link zu diesem Kommentar
vor 2 Minuten schrieb BOfH_666:

 

Das hängt nicht zuletzt auch vom externen Programm ab.  Wenn die Konsole, aus der Du das Programm startest, im Benutzer-Kontext ausgeführt wird, gilt das auch für das daraus gestartete externe Programm. Und wenn dieses Programm keine Option besitzt, es minimiert oder im Hintergrund zu starten, geht es nicht.

 

Vielleicht lieferst Du uns ein bissl Kontext und erklärst, was Du eigentlich machen möchtest .... nicht das mit dem Programm-Start ... das "Große Ganze" ....  ;-) 

 

ich habe als Frontend auf Access ein Auftragserfassungs-Tool erstellt, als Backend läuft local auf dem portablen Gerät ein Replikat der MSSQL_DB. 

Meine Idee:

Wenn der AD eine Online Verbindung hat (ist halt extern nicht immer vorhanden) wählt er sich manuell via Button (Code oben) in die Firma ein und dann werden die Daten repliziert. Der Code funktioniert wie er soll, auch das Replizieren funktioniert. Es geht nur um die kosmetische Sache, dass das Fenster von TV weggeklickt werden muss. Das würde ich gerne ausschalten (minimieren oder im Hintergrund).

 

Grüsse

Supatome

 

 

 

 

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...