Desktopverknüpfung per VBS ohne Anführungszeichen im Ziel
Hallo.
Ich habe ein VBS-Script erstellt nach Vorlagen aus diesem Forum hier.
Damit lege ich eine Desktopverknüpfung an, was prinzipiell auch gut funktioniert.
Das Ziel ist jedoch eine lokale URL zu einem Javaprogramm das ich aber direkt über Java und nicht per Umweg über den Browser starten möchte.
Das Script sieht aktuell so aus:
Mein Problem ist nun, das die Verknüpfung zwar mein 'strProgramm' als Inhalt hat, allerdings jeweils mit Anführungszeichen
davor und dahinter... ohne würde der Link funktionieren.
Wie bekomme ich die weg?
Und als zusätzliche Frage: Kann ich das sich öffenede Dos-Fenster beim Lauf der VBS unterdrücken?
Danke für Eure Hilfe.
Ich habe ein VBS-Script erstellt nach Vorlagen aus diesem Forum hier.
Damit lege ich eine Desktopverknüpfung an, was prinzipiell auch gut funktioniert.
Das Ziel ist jedoch eine lokale URL zu einem Javaprogramm das ich aber direkt über Java und nicht per Umweg über den Browser starten möchte.
Das Script sieht aktuell so aus:
' Verknüpfung auf dem Desktop anlegen per VBS-Scripting
' Variablenvorgabe
Const strProgrammtitel="NAME" 'Name der Verknüpfung
Const strProgramm="%windir%\system32\javaws.exe http://<URL>/javaanwendung.jnlp" 'Programm das Verknüpft werden soll
Const strAusfuehrenIn="%windir%" 'Verzeichnis -Ausführen in-
Const strIcon="C:\meinicon.ico" 'Eigenes Icon für die Verknüpfung
Dim ObjShell
Set ObjShell = CreateObject("WScript.Shell")
ObjShell = msgbox("Wollen Sie eine Desktopverknüpfung anlegen?", +vbYesNo+vbExclamation ,"")
If ObjShell = vbYes then
Dim objShortcut
'Dim objShell
Set objShell= WScript.CreateObject("Wscript.Shell")
strLPfad=objShell.SpecialFolders("Desktop")
Set objShortcut=objShell.CreateShortcut(strLPfad & "\" & strProgrammtitel & ".lnk")
objShortcut.TargetPath= strProgramm
objShortcut.WorkingDirectory= strAusfuehrenIn
objShortcut.Description= strProgrammtitel
' objShortcut.IconLocation = strProgram & ", -1500" 'Programmicon verwenden
objShortcut.IconLocation = strIcon & ", -1500" 'Eigenes Icon verwenden
objShortcut.Save
End if
Mein Problem ist nun, das die Verknüpfung zwar mein 'strProgramm' als Inhalt hat, allerdings jeweils mit Anführungszeichen
davor und dahinter... ohne würde der Link funktionieren.
Wie bekomme ich die weg?
Und als zusätzliche Frage: Kann ich das sich öffenede Dos-Fenster beim Lauf der VBS unterdrücken?
Danke für Eure Hilfe.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 147557
Url: https://administrator.de/contentid/147557
Ausgedruckt am: 22.11.2024 um 11:11 Uhr
5 Kommentare
Neuester Kommentar
Moin WiSch,
auch ich verstehe die Frage nicht ganz... ich kann auch nicht nachvollziehen, wo denn Gänsefüsschen zu sehen sind...??
Aber ich würde dennoch mindestens eine Sache ändern.
In die Property "TargetPath" gehört nach meinem ästhetischen Empfinden wirklich nur das "Programm", also bei dir die javaws.exe.
[Anmerkung: Variablen wie %windir% sollten bei einem Desktop-Link (=Kontext ist angemeldeter Benutzer) aufgelöst werden.
Du hast doch den Zugriff auf das User-Environment.]
Die Parameter gehören (ohne zusätzliche Anführungszeichen) in das optionale Property objShortCut.Arguments
Zur Zusatzfrage (VBS ohne sichtbares Fenster laufen lassen) müsste die Forumssuche ein paar Treffer liefern.
Wobei ich nicht ganz durchschaue
a) von wo denn
b) wieso denn mehr als einmal im Leben
du denn diese Shortcut-Erstellung aufrufst.
Grüße
Biber
auch ich verstehe die Frage nicht ganz... ich kann auch nicht nachvollziehen, wo denn Gänsefüsschen zu sehen sind...??
Aber ich würde dennoch mindestens eine Sache ändern.
In die Property "TargetPath" gehört nach meinem ästhetischen Empfinden wirklich nur das "Programm", also bei dir die javaws.exe.
[Anmerkung: Variablen wie %windir% sollten bei einem Desktop-Link (=Kontext ist angemeldeter Benutzer) aufgelöst werden.
Du hast doch den Zugriff auf das User-Environment.]
Die Parameter gehören (ohne zusätzliche Anführungszeichen) in das optionale Property objShortCut.Arguments
Zur Zusatzfrage (VBS ohne sichtbares Fenster laufen lassen) müsste die Forumssuche ein paar Treffer liefern.
Wobei ich nicht ganz durchschaue
a) von wo denn
b) wieso denn mehr als einmal im Leben
du denn diese Shortcut-Erstellung aufrufst.
Grüße
Biber
Moin WiSch,
danke für die Erläuterung.
Ich kann das Problem zwar immer noch nicht richtig fassen bzw. eine Lösung anbieten, aber noch mal zwei Anregungen.
a) Thema "%windir% kann bei jedem Client ein anderes sein" - ja nee, keine Frage.
Aber dennoch kannst du es doch bei Anlegen des Links auflösen. [Mit Betonung auf "du kannst es". Denn ob Windows immer alle Umgebungsvariablen auflösen mag, die in Links oder vor allem in Registrywerten stehen... ich bin da Pessimist.] Aber das war ohnehin nur eine Fussnote.. hatte nichts mit der eigentlichen Frage zu tun.
b) was hältst du denn zur Problemeingrenzung von einer kleinen Laubsägearbeit? Mal die Werte des manuell erzeugten funktionierenden Links mit WScript.echo per VBS ausgeben und die automatisiert erzeugten drüberlegen?
Und mal posten, was da jetzt wo übersteht?
Grüße
Biber
danke für die Erläuterung.
Ich kann das Problem zwar immer noch nicht richtig fassen bzw. eine Lösung anbieten, aber noch mal zwei Anregungen.
a) Thema "%windir% kann bei jedem Client ein anderes sein" - ja nee, keine Frage.
Aber dennoch kannst du es doch bei Anlegen des Links auflösen. [Mit Betonung auf "du kannst es". Denn ob Windows immer alle Umgebungsvariablen auflösen mag, die in Links oder vor allem in Registrywerten stehen... ich bin da Pessimist.] Aber das war ohnehin nur eine Fussnote.. hatte nichts mit der eigentlichen Frage zu tun.
b) was hältst du denn zur Problemeingrenzung von einer kleinen Laubsägearbeit? Mal die Werte des manuell erzeugten funktionierenden Links mit WScript.echo per VBS ausgeben und die automatisiert erzeugten drüberlegen?
Und mal posten, was da jetzt wo übersteht?
Grüße
Biber