• <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
            好文章!灰常有用  回復  更多評論
              
            久久影院午夜理论片无码| 97精品伊人久久久大香线蕉| 久久无码人妻一区二区三区| 亚洲国产精品无码成人片久久 | 精品久久久久久国产| 激情伊人五月天久久综合| 人人狠狠综合88综合久久| 久久国产免费直播| 久久精品人人做人人爽电影| 久久影院久久香蕉国产线看观看| 亚洲国产精品无码久久久蜜芽| 久久国产精品波多野结衣AV| 一本久久a久久精品亚洲| 精品国产综合区久久久久久| 影音先锋女人AV鲁色资源网久久 | 久久亚洲精品视频| 久久99热这里只有精品66| 欧美黑人又粗又大久久久| 久久精品无码免费不卡| av午夜福利一片免费看久久| 久久夜色精品国产亚洲| 国产亚州精品女人久久久久久| 无码人妻久久一区二区三区免费 | 精产国品久久一二三产区区别| 精品久久777| 人妻无码αv中文字幕久久琪琪布 人妻无码久久一区二区三区免费 人妻无码中文久久久久专区 | 久久综合鬼色88久久精品综合自在自线噜噜 | 97久久超碰成人精品网站| 伊人久久大香线蕉成人| 久久国产精品波多野结衣AV| 久久香综合精品久久伊人| 伊人久久大香线蕉无码麻豆| 久久国产精品免费一区| 久久露脸国产精品| 久久精品国产精品亚洲人人 | 日本久久中文字幕| 国产综合精品久久亚洲| 国产精品久久久99| 精品久久久久久国产牛牛app| 日本精品久久久中文字幕| 91久久精品视频|