我提出一个小混合脚本[BAT/VBS]创建桌面快捷方式。 你当然可以修改它以达到你的目的。
@echo off
mode con cols=87 lines=5 & color 9B
Title Shortcut Creator for your batch and applications files by Hackoo
Set MyFile=%~f0
Set ShorcutName=HackooTest
(
echo Call Shortcut("%MyFile%","%ShorcutName%"^)
echo ^'**********************************************************************************************^)
echo Sub Shortcut(ApplicationPath,Nom^)
echo Dim objShell,DesktopPath,objShortCut,MyTab
echo Set objShell = CreateObject("WScript.Shell"^)
echo MyTab = Split(ApplicationPath,"\"^)
echo If Nom = "" Then
echo Nom = MyTab(UBound(MyTab^)^)
echo End if
echo DesktopPath = objShell.SpecialFolders("Desktop"^)
echo Set objShortCut = objShell.CreateShortcut(DesktopPath ^& "\" ^& Nom ^& ".lnk"^)
echo objShortCut.TargetPath = Dblquote(ApplicationPath^)
echo ObjShortCut.IconLocation = "Winver.exe,0"
echo objShortCut.Save
echo End Sub
echo ^'**********************************************************************************************
echo ^'Fonction pour ajouter les doubles quotes dans une variable
echo Function DblQuote(Str^)
echo DblQuote = Chr(34^) ^& Str ^& Chr(34^)
echo End Function
echo ^'**********************************************************************************************
) > Shortcutme.vbs
Start /Wait Shortcutme.vbs
Del Shortcutme.vbs
::***************************************Main Batch*******************************************
cls
echo Done and your main batch goes here !
echo i am a test
Pause > Nul
::********************************************************************************************
可能是它工作得更好,如果你把它少丰富多彩:它不是'.ink',这是'.lnk'('.LNK') – Stephan
你应该呼应'%% WINDIR %%'如果你希望内容读取'%WinDir%',尽管'%% SystemRoot %%'是可取的,因为'%WinDir%'只是出于传统原因。另外,你是否知道现代操作系统不使用'%AllUsersProfile%',它们使用'%Public%'。也就是说,任何不使用“RunDll32”而没有路径或扩展名的系统都会被破坏。 – Compo
那么stephan,我把.ink改成了.lnk,现在创建了.lnk文件,但是在属性中它没有Target选项卡。 – sadiqeen