mautzer
Goto Top

Verknüpfung via Batch - Funktionsfehler

Ich suche nach einer Lösung und gleichzeitig nach ein paar Profitipps

Hallo liebe Entwickler,

ich habe ein kleines Problem mit einer einer Batchanwendung.

Was ich machen will ist folgendes:

Ich möchte eine Verknüpfung erstellen, (auf den Desktop) welche ein Tastenkürzel hat und gleichzeitig auch angesprochen werden kann.

Da ich schlecht im erklären bin gebe ich euch ein Beispiel:

@echo off
cd c:/
MD "XX"
cd "c:/XX"
echo start iexplore http://webadresse > xx.bat

set "zielpfad=%userprofile%\Desktop"
set "progtitel=XX"
set "progdir=C:\XX\XX.bat"
set "progexe="

md "%zielpfad%" 2>nul
md "%progdir%" 2>nul


>%temp%\MakeShortCut.vbs echo Set objShell=WScript.CreateObject("Wscript.Shell")
%temp%\MakeShortCut.vbs echo Set objShortcut=objShell.CreateShortcut("%zielpfad%\%progtitel%.lnk")
%temp%\MakeShortCut.vbs echo objShortcut.TargetPath="%progdir%\%progexe%"
%temp%\MakeShortCut.vbs echo objShortcut.Description="%beschreibung%"
%temp%\MakeShortCut.vbs echo objShortcut.WorkingDirectory="%progdir%"
%temp%\MakeShortCut.vbs echo objShortcut.Save

cscript //nologo %temp%\MakeShortCut.vbs
del %temp%\MakeShortCut.vb


So, dieses tolle Script (was soweit auch funktioniert) habe ich auch aus diesem Forum (ich glaube von "Bastla"), hierfür bin ich schon mal sehr dankbar!!

Jedoch benötige ich mehr Hilfe, und zwar gehen folgende Sachen nicht:

1. Ich kann der Verknüpfung *keine* Tastenkombination zuweisen (gerne würde ich dies via Script erledigen, falls nicht möglich manuell). Momentan geht es jedoch gar nicht.
--> Rechtsklick auf die Verknüpfung -> Eigenschaften -> Tastenkombination

Diese würde ich natürlich schon mal gerne füllen mit z.B. STRG + SHIFT + O


2. Folgende Fehlermeldung erscheint beim manuelle ändern:

Der im Feld "Arbeitsverzeichnis" angegebene Ordner "C:\XX\XX.bat" ist ungültig. Stellen Sie sicher, dass der Ordner vorhanden und dass die Pfadangabe richtig ist.

Ich habe in meinem Script den Pfad + Ordner und Datei ja selber erstellt, kann also nicht sein, dass es "nicht" stimmt.

Woran liegt dies? Ich gehe davon aus, dass die Verknüpfung keine "echte" Verknüpfung ist, welche mit dem VB innerhalb des Batches erstellt wird?


Vielen Dank im Voraus für Eure Hilfe!

Content-Key: 203501

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

Printed on: May 4, 2024 at 20:05 o'clock

Member: Mautzer
Mautzer Mar 18, 2013 at 14:50:18 (UTC)
Goto Top
Sollte es evtl. zu unklar sein oder Ihr Informationen vermissen, bitte schreibt mir. Ich brauche euch Profis =)
Member: MrNetman
MrNetman Mar 18, 2013 at 15:32:14 (UTC)
Goto Top
Hi Mautzer,

XX\XX reicht vielleicht nicht als Info.
Wenn da Leerzeichen drin sind, dann müssen Gänsefüsschen dran.
Außerdem ist c:\xx\xx.bat kein Arbeitsverzeichnis sondern eine ausführbare Datei. Das Arbeitsverzeichnis ist c:\xx

Gruß
Netman
Mitglied: 76109
76109 Mar 18, 2013 updated at 15:43:35 (UTC)
Goto Top
Hallo Mautzer!

Versuchs mal so:
objShortcut.Hotkey = "Ctrl+Alt+o"  

Gruß Dieter
Member: Mautzer
Mautzer Mar 18, 2013 updated at 16:01:42 (UTC)
Goto Top
Zitat von @76109:
Hallo Mautzer!

Versuchs mal so:
> objShortcut.Hotkey = "Ctrl+Alt+o"  
> 

Gruß Dieter

Hi Dieter,

leider hat dein Vorschlag nicht geklappt, ich habe es in folgenden Part integriert, ist das richtig so:

@echo off
cd "c:/"  
MD "Name"  
cd "c:/Name"  
echo start iexplore http://www.Name.de > Name.bat
set "zielpfad=%userprofile%\Desktop"  
set "progtitel=Name"   
set "objShortcut.Hotkey = "Ctrl+shift+o""  
set "progdir=C:\Name\Name.bat"   
set "progexe="   
set "beschreibung=Name"   
md "%zielpfad%" 2>nul   
md "%progdir%" 2>nul   
 >%temp%\MakeShortCut.vbs echo Set objShell=WScript.CreateObject("Wscript.Shell")   
>>%temp%\MakeShortCut.vbs echo Set objShortcut=objShell.CreateShortcut("%zielpfad%\%progtitel%.lnk")   
>>%temp%\MakeShortCut.vbs echo objShortcut.TargetPath="%progdir%\%progexe%"   
>>%temp%\MakeShortCut.vbs echo objShortcut.Description="%beschreibung%"   
>>%temp%\MakeShortCut.vbs echo objShortcut.WorkingDirectory="%progdir%"   
>>%temp%\MakeShortCut.vbs echo objShortcut.Save 
cscript //nologo %temp%\MakeShortCut.vbs 
del %temp%\MakeShortCut.vb		

Vielen Dank schon mal für den Versuch, ich warte gespannt auf neue Lösungsansätze - ich bin völlig ratlos habe stundenlang google missbraucht und versucht den Befehl zu finden für die Tastenkombi, nichts funktioniert so far.


Zitat von @MrNetman:
Hi Mautzer,

XX\XX reicht vielleicht nicht als Info.
Wenn da Leerzeichen drin sind, dann müssen Gänsefüsschen dran.
Außerdem ist c:\xx\xx.bat kein Arbeitsverzeichnis sondern eine ausführbare Datei. Das Arbeitsverzeichnis ist c:\xx

Gruß
Netman

Hi Netman,

vielen Dank für deinen Post, es sind keine Leerzeichen vorhanden aus dem selbigen Grund, welchen du genannt hast.

Jedoch bist du auf einen spannenden Punkt gestoßen, und zwar, dass die Verknüpfung das Arbeitsverzeichnis anscheinend falsch angibt.

Die Informationen werden automatisch gefüllt.


Gerne könnt ihr mein Skript nutzen und ausprobieren (macht erstmal nichts bei euch, da ihr nicht die passenden Komponenten dafür habt)

Es sollte ein Ordner in C:/ erstellt werden und die Verknüpfung auf dem Desktop, welche durch ein externes Gerät aktiviert wird (welches hier jedoch keine Rolle spielt).

Also freunde, packt die schweren Geschütze aus und helft mir.

Ich bin euch sehr dankbar!
Mitglied: 76109
76109 Mar 18, 2013 updated at 16:07:31 (UTC)
Goto Top
Hallo Mautzer!

wohl eher im VBS-Teil (vor .Save):
>>%temp%\MakeShortCut.vbs echo objShortcut.Hotkey = "Ctrl+shift+o"  

Gruß Dieter
Member: Mautzer
Mautzer Mar 18, 2013 at 16:10:13 (UTC)
Goto Top
Öhm

*keuch*

funktioniert... sorry ich bin nicht mehr auf der Höhe heute =)