• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            春暖花開
            雪化了,花開了,春天來了
            posts - 149,comments - 125,trackbacks - 0

            快捷方式的讀取和創建

            一、快捷方式的獲取

            SHGetShortcutTarget

            功能:

            獲取快捷方式的目標路徑

            原型:

            BOOL SHGetShortcutTarget(

              LPTSTR szShortcut,

              LPTSTR szTarget,

              int cbMax

            );

            參數:

            szShortcut :包含快捷方式名字的字符串

            szTarget :包含快捷方式目標路徑的字符串, 字符串的大小至少是cbMax

            cbMax :將被拷貝到緩存szTarget的最大字符串

            返回值:

            成功返回TRUE,否則返回FALSE

            示例代碼:

            TCHAR StartMenuFilePath[MAX_PATH];
            ::SHGetSpecialFolderPath(NULL, StartMenuFilePath, CSIDL_PROGRAMS, FALSE);
            TCHAR szShortPath[MAX_PATH];
            wsprintf(szShortPath, _T("%s\\%s"), StartMenuFilePath, _T("搜索.lnk"));
            TCHAR szFilePath[MAX_PATH];
            :SHGetShortcutTarget(szShortPath, szFilePath, sizeof(szFilePath));

            執行完畢后,
            szFilePath 的值為shfind.exe

            二、快捷方式的創建

            SHCreateShortcut

            功能:

            創建快捷方式。

            原型:

            DWORD WINAPI SHCreateShortcut(

              LPTSTR szShortcut,

              LPTSTR szTarget

            );

            參數:

            szShortcut :包含快捷方式名字和路徑的字符串。在路徑指定的位置創建快捷方式。

            szTarget 包含快捷方式目標路徑和參數的字符串。大小限定在256個字符以內。

            返回值:

            成功返回TRUE,否則返回FALSE。如果指定的快捷方式已經存在的話將返回FALSE

            示例代碼:

            SHCreateShortcut(_T("\\搜索.lnk"), _T("shfind.exe"));
            執行結果為在根目錄下創建了“搜索.lnk”這個快捷方式文件。

            三、補充說明

            這里主要針對獲取快捷方式的內容進行幾點說明:

            我們獲取快捷方式的時候,內容不一定只包含路徑,有可能存在一下的情況,如:

            1、路徑后跟隨名稱

            \Windows\“開始”菜單\程序\任務.lnk

            2、縮寫名

            poutlook.exe tasks

            \Windows\“開始”菜單\程序\ActiveSync.lnk

            :MSSYNCAPP

            3、路徑后跟隨數字

            \Windows\“開始”菜單\程序\游戲\icon.lnk

            shellres.dll,-8229

            考慮以上這幾種情況,我們在獲取快捷方式路徑時,需要對路徑做一些特殊處理。這里重點說一下第二種情況,這個縮寫代表什么意思?在網上搜索了一下,原來我們可以在[HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\Rai\]鍵值下找到名為:MSSYNCAPP的子鍵,鍵值為1的子鍵數值指明了名為:MSSYNCAPP的程序名稱。但我們從這里獲得的值,有時也不是路徑,還會再次出現上述三種情況。所以,如果我們想從快捷方式中獲取路徑的話,就需要留意一些了。

            至于為什么會這樣,我還不是很明白。

            posted on 2009-07-23 18:13 Sandy 閱讀(1644) 評論(1)  編輯 收藏 引用 所屬分類: Windows Mobile

            FeedBack:
            # re: Windows Mobile 快捷方式的讀取和創建
            2010-01-20 08:57 | beeboo
            好文章!灰常有用  回復  更多評論
              
            久久精品国产亚洲7777| 欧美午夜精品久久久久免费视| 无码人妻久久一区二区三区| 国内精品久久人妻互换| 国产成人99久久亚洲综合精品| 日韩十八禁一区二区久久| 久久这里都是精品| 99久久免费国产精品热| 亚洲美日韩Av中文字幕无码久久久妻妇| 2020国产成人久久精品| 久久本道伊人久久| 尹人香蕉久久99天天拍| 亚洲国产精品久久久久婷婷软件| 亚洲国产视频久久| 国产成人久久精品二区三区| 精品久久久久久久国产潘金莲 | 国产人久久人人人人爽| 久久精品免费网站网| 狠狠色丁香久久婷婷综| 久久久久久久波多野结衣高潮| 国产精品成人精品久久久| 国产精品毛片久久久久久久| 久久九九兔免费精品6| 人妻中文久久久久| 国产精品99久久不卡| 精品久久久久久综合日本| 久久人人爽人人爽人人AV| 国内精品久久久久久久久电影网 | 午夜精品久久影院蜜桃| 国产成人精品久久亚洲高清不卡 国产成人精品久久亚洲高清不卡 国产成人精品久久亚洲 | 一97日本道伊人久久综合影院| AAA级久久久精品无码区| 久久99精品国产一区二区三区| 久久国产精品99国产精| 看久久久久久a级毛片| 久久香蕉超碰97国产精品| 人妻无码中文久久久久专区| 日韩人妻无码精品久久免费一| 久久久久亚洲av无码专区导航| 久久久噜噜噜久久中文福利| 国产精品久久久久…|