最近做的很多事情都涉及快捷方式,所以整理一下。
快捷方式的格式
數(shù)字#路徑 參數(shù)
數(shù)字,我不太清楚這個(gè)是代表什么含義,也沒有看到確切的說法,有人說是#后的ACSII字符的數(shù)量,
路徑,有相對(duì)路徑,也有絕對(duì)路徑。如果路徑中包含空格的話,一定要用雙引號(hào)括起來,否則會(huì)產(chǎn)生錯(cuò)誤, 把空格以后的內(nèi)容當(dāng)成參數(shù)了吧,這是我認(rèn)為的。
參數(shù),有多種吧,我還沒有查資料,等查到了再補(bǔ)充。
舉個(gè)例子:
39#"\Windows\Camera.exe"
這是手機(jī)的程序中相機(jī)的快捷方式。顯然39不是#后的字符的數(shù)量。
路徑有時(shí)會(huì)是一些縮寫,微軟自己的程序會(huì)這么寫,如手機(jī)中的圖片和視頻,其內(nèi)容為22#:MSPIMG。
:MSPIMG是什么意思呢?路徑,又是指代什么呢?通過查閱資料,發(fā)現(xiàn)它對(duì)應(yīng)注冊(cè)表HKEY_LOCAL_MACHINE下\\SOFTWARE\\Microsoft\\Shell\\Rai中的:MSPIMG,其中“1”對(duì)應(yīng)的值為pimg.exe。
快捷方式的創(chuàng)建
快捷方式的創(chuàng)建可以通過SHCreateShortcut這個(gè)函數(shù)來創(chuàng)建,其原型如下:
DWORD WINAPI SHCreateShortcut(
LPTSTR szShortcut,
LPTSTR szTarget
);
例如:
SHCreateShortcut( _T("\\My Documents\\Windows Media Player.lnk"), _T("\\Windows\\Ceplayer.exe"));
快捷方式路徑的獲取
快捷方式的目標(biāo)路徑獲取,可以通過SHGetShortcutTarget來獲取。其原型如下:
BOOL SHGetShortcutTarget(
LPTSTR szShortcut,
LPTSTR szTarget,
int cbMax
);
例如:
TCHAR str[MAX_PATH];
SHGetShortcutTarget(_T("\\My Documents\\Windows Media Player.lnk"), str, MAX_PATH);
posted on 2008-12-14 23:10
Sandy 閱讀(578)
評(píng)論(0) 編輯 收藏 引用 所屬分類:
windows學(xué)習(xí)