最近做的很多事情都涉及快捷方式,所以整理一下。
快捷方式的格式
數字#路徑 參數
數字,我不太清楚這個是代表什么含義,也沒有看到確切的說法,有人說是#后的ACSII字符的數量,
路徑,有相對路徑,也有絕對路徑。如果路徑中包含空格的話,一定要用雙引號括起來,否則會產生錯誤, 把空格以后的內容當成參數了吧,這是我認為的。
參數,有多種吧,我還沒有查資料,等查到了再補充。
舉個例子:
39#"\Windows\Camera.exe"
這是手機的程序中相機的快捷方式。顯然39不是#后的字符的數量。
路徑有時會是一些縮寫,微軟自己的程序會這么寫,如手機中的圖片和視頻,其內容為22#:MSPIMG。
:MSPIMG是什么意思呢?路徑,又是指代什么呢?通過查閱資料,發現它對應注冊表HKEY_LOCAL_MACHINE下\\SOFTWARE\\Microsoft\\Shell\\Rai中的:MSPIMG,其中“1”對應的值為pimg.exe。
快捷方式的創建
快捷方式的創建可以通過SHCreateShortcut這個函數來創建,其原型如下:
DWORD WINAPI SHCreateShortcut(
LPTSTR szShortcut,
LPTSTR szTarget
);
例如:
SHCreateShortcut( _T("\\My Documents\\Windows Media Player.lnk"), _T("\\Windows\\Ceplayer.exe"));
快捷方式路徑的獲取
快捷方式的目標路徑獲取,可以通過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 閱讀(568)
評論(0) 編輯 收藏 引用 所屬分類:
windows學習