網際網路快捷方式
網際網路快捷方式物件可用來建立網際網路網站的桌面快捷方式。 就像檔案系統中專案的快捷方式一樣,網際網路快捷方式會採用桌面上的圖示形式。 當使用者按一下圖示時,會啟動瀏覽器,並顯示與快捷方式相關聯的網站。
下列主題會討論。
建立網際網路快捷方式
您可以使用 WebBrowser 控制項或頁面的 URL 來建立網際網路快捷方式。
從 WebBrowser 控制項建立網際網路快捷方式
如果您的應用程式裝載 WebBrowser 控制項,您可以使用網際網路快捷方式物件,以下列方式建立快捷方式。
- 使用類別識別碼建立具有 CoCreateInstance的網際網路快捷方式物件的實例, (CLSID) CLSID_InternetShortcut。
- 使用IObjectWithSite::SetSite將指標傳遞至 WebBrowser 的IUnknown介面至網際網路快捷方式物件。
- 當您想要建立 WebBrowser 控制項所檢視之頁面的快捷方式時,請呼叫網際網路快捷方式物件的 IPersistFile::Save 方法。
快捷方式將會建立在 IPersistFile::Save中指定的位置。 這個位置可讓 WebBrowser 控制項還原其狀態,包括將正確檔載入框架組的工作。
從 URL 建立網際網路快捷方式
如果您有要連結的頁面 URL,您也可以建立網際網路快捷方式。
- 使用 CLSID 建立具有 CoCreateInstance的網際網路快捷方式物件的實例,CLSID_InternetShortcut。
- 使用 IUniformResourceLocator::SetURL 方法,在快捷方式中設定 URL。
- 使用 IPersistFile::Save 方法,將快捷方式檔案儲存到所需的位置。
存取屬性儲存體
網際網路快捷方式物件包含數個屬性,您可以使用下列程式,透過物件的 IPropertySetStorage 介面進行存取。
- 使用 IID_IPropertySetStorage 呼叫QueryInterface來取得IPropertySetStorage介面。
- 呼叫 IPropertySetStorage::Open with FMTID_Intshcut 或 FMTID_InternetSite 來取得 IPropertyStorage 介面,以存取網際網路快捷方式屬性儲存體集。
- 傳遞適當的屬性識別碼,以 IPropertyStorage::ReadMultiple 讀取屬性儲存體資訊。
使用4.70 版或更新版本的Shell32.dll,您也可以呼叫IShellFolder::BindToStorage,並將pidl參數設定為 來擷取IPropertySetStorage介面。URL 檔案和riid參數設定為 IID_IPropertySetStorage。
您可以要求下列屬性識別碼來FMTID_Intshcut。
PROPID | Variant 類型 | 描述 |
---|---|---|
PID_IS_URL | VT_LPWSTR | 快捷方式所導向的 URL |
PID_IS_NAME | VT_LPWSTR | 網際網路快捷方式的名稱 |
PID_IS_WORKINGDIR | VT_LPWSTR | 快捷方式的工作目錄 |
PID_IS_HOTKEY | VT_UI2 | 快速鍵的快速鍵 |
PID_IS_SHOWCMD | VT_I4 | 顯示快捷方式的命令 |
PID_IS_ICONINDEX | VT_I4 | 圖示的索引 |
PID_IS_ICONFILE | VT_LPWSTR | 包含圖示的檔案 |
PID_IS_WHATSNEW | VT_LPWSTR | 新增文字 |
PID_IS_AUTHOR | VT_LPWSTR | 作者 |
PID_IS_DESCRIPTION | VT_LPWSTR | 網站的描述文字 |
PID_IS_COMMENT | VT_LPWSTR | 使用者批註批註 |
PID_IS_ROAMED | VT_BOOL | 第一次漫遊快捷方式時為 True |
您可以要求下列屬性識別碼FMTID_InternetSite。
PROPID | Variant 類型 | 描述 |
---|---|---|
PID_INTSITE_WHATSNEW | VT_LPWSTR | 新增文字 |
PID_INTSITE_AUTHOR | VT_LPWSTR | 作者 |
PID_INTSITE_LASTVISIT | VT_FILETIME | 上次流覽時間網站 |
PID_INTSITE_LASTMOD | VT_FILETIME | 上次修改網站的時間 |
PID_INTSITE_VISITCOUNT | VT_UI4 | 使用者流覽次數 |
PID_INTSITE_DESCRIPTION | VT_LPWSTR | 網站的描述文字 |
PID_INTSITE_COMMENT | VT_LPWSTR | 使用者批註批註 |
PID_INTSITE_FLAGS | VT_UI4 | 指出 (使用PIDISF_旗標) |
PID_INTSITE_CONTENTLEN | N/A | 目前不支援 |
PID_INTSITE_CONTENTCODE | N/A | 目前不支援 |
PID_INTSITE_RECURSE | N/A | 目前不支援 |
PID_INTSITE_WATCH | N/A | 目前不支援 |
PID_INTSITE_SUBSCRIPTION | VT_UI8 | 訂用帳戶管理員的 SUBSCRIPTIONCOOKIE 值 |
PID_INTSITE_URL | VT_LPWSTR | 快捷方式所導向的 URL |
PID_INTSITE_TITLE | VT_LPWSTR | 標題 |
PID_INTSITE_CODEPAGE | VT_UI4 | 檔的字碼頁 |
PID_INTSITE_TRACKING | N/A | 目前不支援 |
PID_INTSITE_ICONINDEX | VT_I4 | 圖示的索引 |
PID_INTSITE_ICONFILE | VT_LPWSTR | 包含圖示的檔案 |
PID_INTSITE_ROAMED | VT_UI4 | 由於漫遊而新增專案 |
以下是網際網路網站旗標。
旗標 | 描述 |
---|---|
PIDISF_RECENTLYCHANGED | 指出網站最近已變更 |
PIDISF_CACHEDSTICKY | 目前不支援 |
PIDISF_CACHEIMAGES | 目前不支援 |
PIDISF_FOLLOWALLLINKS | 目前不支援 |
下列值用於網際網路漫遊歷程記錄。
PID_INTSITE_ROAMED的值 | 描述 |
---|---|
未設定或PIDISR_UP_TO_DATE | 漫遊尚未修改此快取專案。 |
PIDISR_NEEDS_ADD | 此快取專案已透過漫遊新增至快取。 一旦完成專案處理,請設定PIDISR_UP_TO_DATE。 |
PIDISR_NEEDS_UPDATE | 此快取專案已存在於本機電腦上,但已透過漫遊進行更新。 一旦完成專案處理,請設定PIDISR_UP_TO_DATE。 |
PIDISR_NEEDS_DELETE | 漫遊偵測到應該刪除此快取專案。 例如,使用者可能已清除其瀏覽器歷程記錄。 使用 DeleteUrlCacheEntry 刪除專案。 |
介面
網際網路快捷方式物件會公開許多介面。
OLE 介面
殼層介面
函式
有數個公用程式函式可以搭配網際網路快捷方式物件使用。
網際網路快捷方式公用程式函式