2016-03-18 22 views
0

Ben bir toplu komut dosyası ile bir url kısayolunu oluşturma, ama nedense o ben ayarlamak anlatmak simgeyi belirlemez ...Windows toplu dosya sorunu ayarı özel url dosya simgesi

Kodu:

echo [InternetShortcut]> "C:\winapps\SysNetworkManager.url" 
echo URL="C:\winapps\snmres\winstart.bat">> "C:\winapps\SysNetworkManager.url" 
echo IconFile="C:\winapps\snmres\snmico.ico">> "C:\winapps\SysNetworkManager.url" 
echo IconIndex=0>> "C:\winapps\SysNetworkManager.url" 

o C simgeyi ayarlamak değildir: \ winapps \ snmres \ snmico.ico, bu simgeyi belirler yerine: C: \ Windows \ system32 \

+0

Toplu iş dosyası, "IconFile" anahtarını doğru olarak yazar; Dosyayı değiştiren Internet Explorer ile URL'yi açtığınızı varsayalım. Son satırda bir sorun var: 'cmd' için '=' _SPACE_ gibi bir belirteç ayırıcıdır ve '0 >>' dosyaya _STDIN_ (boş) yönlendirme olarak anlaşılır, böylece 'IconIndex' tuşu yazılı değil; Bu konuda çalışmak için, yazın: '(echo IconIndex = 0) >>" C: \ winapps \ SysNetworkNamager.url "'. "0" yerine "1" sayısı olup olmadığından emin değilim (sadece sistemimde bazı rastgele URL dosyalarını kontrol ettim, bunların çoğunda 'IconIndex = 1 ', hiçbiri' 0' içermiyordu). – aschipfl

cevap

0

Url.dll bir temp oluşturmayı deneyin VBS

@echo off 

set SCRIPT="%TEMP%\%RANDOM%-%RANDOM%-%RANDOM%-%RANDOM%.vbs" 

echo Set oWS = WScript.CreateObject("WScript.Shell") >> %SCRIPT% 
echo sLinkFile = "%USERPROFILE%\Desktop\myshortcut.lnk" >> %SCRIPT% 
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> %SCRIPT% 
echo oLink.TargetPath = "D:\myfile.extension" >> %SCRIPT% 
echo oLink.Save >> %SCRIPT% 
echo oLink.IconLocation = "C:\myicon.extension" >> %SCRIPT% 

cscript /nologo %SCRIPT% 
del %SCRIPT%`