thom001
Goto Top

VBS Shortcut Problem da in TargetPath Anführungszeichen verwendet werden.

Hallo,

ich habe ein VBSkript das bei den Benutzern eine Verknüpfung erstellt, sofern sie in der Programm Gruppe sind.
Nun habe ich ein Programm das Anführungszeichen in der Befehlszeile hat.
Die Befehlszeile lautet:

C:\Pfad\Programm.exe -O CTSStartUp -R CTSStartUp -M 111.111.11.111 9988 -D 111.111.111.111 0 "" CTSDBOracleOciCursor -V "btw" "1.00.001" "368" -T 111.111.111.111 0 ""

Das Script sieht so aus:

If InStr(strGroup, lcase(ProgGroup)) Then
Set objShortcut =objShell.CreateShortcut("C:\Users\" & Logonuser & "\AppData\Roaming\Microsoft\Windows\Start menu\Programs\Special\Programm.lnk")
objShortcut.TargetPath = "C:\Pfad\Programm.exe -O CTSStartUp -R CTSStartUp -M 111.111.11.111 9988 -D 111.111.111.111 0 "" CTSDBOracleOciCursor -V "btw" "1.00.001" "368" -T 111.111.111.111 0 "" "" CTSDBOracleOciCursor -V "btw" "1.00.001" "368" -T 193.187.246.210 0 """
objShortcut.Arguments = ""
objShortcut.Description = "Progname"
objShortcut.WorkingDirectory = "C:\pfad"
objShortcut.IconLocation = "C:\Pfad\Programm.exe "
objShortcut.Save
End If

VBScript gibt nun die "Fehlermeldung Kompilierungsfehler in Microsoft VBScript: Anweisungsende" erwartet aus.
Wie bekomme ich VB dazu diese Befehlszeile als Shortcut zu akzeptieren?

Gruß
Thomas

Content-Key: 174394

Url: https://administrator.de/contentid/174394

Ausgedruckt am: 28.03.2024 um 08:03 Uhr

Mitglied: 60730
60730 10.10.2011 um 13:28:18 Uhr
Goto Top
Servus,

  • Benutze doch bitte Code Tags...
  • vergleiche - Zeile 2 und Zeile 3
  • " entspricht Chr(34)
Die Befehlszeile lautet:
C:\Pfad\Programm.exe -O CTSStartUp -R CTSStartUp -M 111.111.11.111 9988 -D 111.111.111.111 0 "" CTSDBOracleOciCursor -V "btw" "1.00.001" "368" -T 111.111.111.111 0 ""

Ähh fehlt da nicht ein führendes "?

If InStr(strGroup, lcase(ProgGroup)) Then
Set objShortcut =objShell.CreateShortcut("C:\Users\" & Logonuser & "\AppData\Roaming\Microsoft\Windows\Start menu\Programs\Special\Programm.lnk")  
objShortcut.TargetPath = "C:\Pfad\Programm.exe -O CTSStartUp -R CTSStartUp -M 111.111.11.111 9988 -D 111.111.111.111 0 " & Chr(34) & Chr(34) & " CTSDBOracleOciCursor -V "& Chr(34) & Chr(34) & "btw" & Chr(34) & Chr(34) & "1.00.001" "368" -T 111.111.111.111 0 "" "" CTSDBOracleOciCursor -V "btw" "1.00.001" "368" -T 193.187.246.210 0 """  
objShortcut.Arguments = ""  
objShortcut.Description = "Progname"  
objShortcut.WorkingDirectory = "C:\pfad"  
objShortcut.IconLocation = "C:\Pfad\Programm.exe "  
objShortcut.Save
End If

edit - nee das ist mir auch mit Code Tags zu viel Arbeit...
Mitglied: Thom001
Thom001 10.10.2011 um 13:49:29 Uhr
Goto Top
Zitat von @60730:
> Die Befehlszeile lautet:
> C:\Pfad\Programm.exe -O CTSStartUp -R CTSStartUp -M 111.111.11.111 9988 -D 111.111.111.111 0 ""
CTSDBOracleOciCursor -V "btw" "1.00.001" "368" -T 111.111.111.111 0 ""

Ähh fehlt da nicht ein führendes "?


Nein der Link nach der Installation sieht so aus.


Die Fehlermeldung kommt immer noch

Gruß
Thomas
Mitglied: 60730
60730 10.10.2011 um 14:23:22 Uhr
Goto Top
Servus,

Die Fehlermeldung kommt immer noch

yupp...
edit - nee das ist mir auch mit Code Tags zu viel Arbeit...
msgbox Chr(34) & "C:\Pfad\Programm.exe -O CTSStartUp -R CTSStartUp -M 111.111.11.111 9988 -D 111.111.111.111 0 " & Chr(34) & Chr(34) & " CTSDBOracleOciCursor -V " & Chr(34) & "btw" & Chr(34) & Chr(34) & "1.00.001" & Chr(34) & Chr(34) & "368" & Chr(34) & " -T 111.111.111.111 0 " & Chr(34) & Chr(34)  

Solange bis deine gewünschten Infos da angezeigt werden...
Mitglied: bastla
bastla 10.10.2011 um 20:36:48 Uhr
Goto Top
Hallo Thim001 und willkommen im Forum, hallo T-Mo!

Gelegentlich denken die bei MS sich sogar etwas dabei - etwa, wenn sie ein Property "Arguments" erfinden ... face-wink

... daher wäre vielleicht
objShortcut.TargetPath = "C:\Pfad\Programm.exe"  
objShortcut.Arguments = "-O CTSStartUp -R CTSStartUp -M 111.111.11.111 9988 -D 111.111.111.111 0 """" CTSDBOracleOciCursor -V ""btw"" ""1.00.001"" ""368"" -T 111.111.111.111 0 """" """" CTSDBOracleOciCursor -V ""btw"" ""1.00.001"" ""368"" -T 193.187.246.210 0 """""  
einen Versuch wert (ich hab's jedenfalls nicht getestet).

Ach ja, bevor ich vergess' das zu erwähnen: Für Anführungszeichen unter Anführungszeichen gilt der alte Werbespruch "Nimm 2, dann klappt's auch mit dem Nachbarn", oder so ähnlich ...

Grüße
bastla
Mitglied: Thom001
Thom001 11.10.2011 um 10:54:25 Uhr
Goto Top
Hallo bastla,

Dein Tipp war die Lösung.

Danke

Thomas