次の方法で共有


インターネット ショートカット

インターネット ショートカット オブジェクトは、インターネット サイトへのデスクトップ ショートカットを作成するために使用されます。 ファイル システム内の項目へのショートカットと同様に、インターネット ショートカットはデスクトップ上のアイコンの形式になります。 ユーザーがアイコンをクリックすると、ブラウザーが起動し、ショートカットに関連付けられているサイトが表示されます。

次のトピックについて説明します。

インターネット ショートカットの作成

WebBrowser コントロールを使用するか、ページの URL を使用して、インターネット ショートカットを作成できます。

WebBrowser コントロールからインターネット ショートカットを作成する

アプリケーションが WebBrowser コントロールをホストしている場合は、インターネット ショートカット オブジェクトを使用して、次のようにショートカットを作成できます。

  1. CLSID_InternetShortcutのクラス識別子 (CLSID) を使用して、 CoCreateInstance を使用してインターネット ショートカット オブジェクトのインスタンスを作成します。
  2. WebBrowser の IUnknown インターフェイスへのポインターを、 IObjectWithSite::SetSite を使用してインターネット ショートカット オブジェクトに渡します。
  3. WebBrowser コントロールによって表示されるページへのショートカットを作成する場合は、インターネット ショートカット オブジェクトの IPersistFile::Save メソッドを呼び出します。

ショートカットは、 IPersistFile::Save で指定された場所に作成されます。 この場所により、WebBrowser コントロールは、正しいドキュメントをフレームセットに読み込むタスクを含む状態を復元できます。

URL からのインターネット ショートカットの作成

リンク先のページの URL がある場合は、インターネット ショートカットを作成することもできます。

  1. CLSID_InternetShortcutの CLSID を使用して、 CoCreateInstance を使用してインターネット ショートカット オブジェクトのインスタンスを作成します。
  2. ショートカットで URL を設定するには 、IUniformResourceLocator::SetURL メソッドを使用します。
  3. ショートカット ファイルを目的の場所に保存するには、 IPersistFile::Save メソッドを使用します。

プロパティ ストレージへのアクセス

インターネット ショートカット オブジェクトには、次の手順でオブジェクトの IPropertySetStorage インターフェイスを介してアクセスできるいくつかのプロパティが含まれています。

  1. IID_IPropertySetStorageを使用して QueryInterface を呼び出して、IPropertySetStorage インターフェイスを取得します。
  2. IPropertySetStorage::Open with FMTID_Intshcutまたは FMTID_InternetSite を呼び出して IPropertyStorage インターフェイスを取得することで、インターネット ショートカット プロパティ ストレージ セットにアクセスします。
  3. 適切なプロパティ ID を渡して 、IPropertyStorage::ReadMultiple でプロパティ ストレージ情報を読み取ります。

バージョン 4.70 以降のShell32.dllでは、pidl パラメーターを に設定して IShellFolder::BindToStorage を呼び出すことで、IPropertySetStorage インターフェイスを取得することもできます。URL ファイルと riid パラメーターをIID_IPropertySetStorageに設定します。

FMTID_Intshcutでは、次のプロパティ ID を要求できます。

PROPID バリアント型 説明
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 Author
PID_IS_DESCRIPTION VT_LPWSTR サイトの説明テキスト
PID_IS_COMMENT VT_LPWSTR ユーザー注釈付きコメント
PID_IS_ROAMED VT_BOOL True を指定すると、ショートカットが初めてローミングされます

 

FMTID_InternetSiteには、次のプロパティ ID を要求できます。

PROPID バリアント型 説明
PID_INTSITE_WHATSNEW VT_LPWSTR 新着情報
PID_INTSITE_AUTHOR VT_LPWSTR Author
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 該当なし 現在、サポートされていません
PID_INTSITE_CONTENTCODE 該当なし 現在、サポートされていません
PID_INTSITE_RECURSE 該当なし 現在、サポートされていません
PID_INTSITE_WATCH 該当なし 現在、サポートされていません
PID_INTSITE_SUBSCRIPTION VT_UI8 サブスクリプション マネージャーの SUBSCRIPTIONCOOKIE 値
PID_INTSITE_URL VT_LPWSTR ショートカットがリードする URL
PID_INTSITE_TITLE VT_LPWSTR Title
PID_INTSITE_CODEPAGE VT_UI4 ドキュメントのコード ページ
PID_INTSITE_TRACKING 該当なし 現在、サポートされていません
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 インターフェイス

シェル インターフェイス

関数

インターネット ショートカット オブジェクトで使用できるユーティリティ関数がいくつかあります。

インターネット ショートカット ユーティリティ関数