IHomeGroup::ShowSharingWizard メソッド (shobjidl_core.h)

ユーザーがホーム グループを作成できるウィザードを表示し、ウィザードを通じてユーザーが選択した共有オプションを取得します。

構文

HRESULT ShowSharingWizard(
  [in]  HWND                    owner,
  [out] HOMEGROUPSHARINGCHOICES *sharingchoices
);

パラメーター

[in] owner

型: HWND

通知に使用されるウィザードの所有者ウィンドウのハンドル。 この値には NULL を指定できます。

[out] sharingchoices

種類: HOMEGROUPSHARINGCHOICES*

このメソッドが正常に返されるときに、ホーム グループと共有するウィザードで選択されたライブラリとデバイスを示す次の値の 1 つ以上を受け取る値へのポインター。

HGSC_NONE (0x00000000)

0x00000000。 [ホーム グループ] オプションが選択されていません

HGSC_MUSICLIBRARY (0x00000001)

0x00000001。 ホームグループと共有するミュージックライブラリが選択されました。

HGSC_PICTURESLIBRARY (0x00000002)

0x00000002。 ホーム グループと共有する画像ライブラリが選択されました。

HGSC_VIDEOSLIBRARY (0x00000004)

0x00000004。 ホーム グループと共有するビデオ ライブラリが選択されました。

HGSC_DOCUMENTSLIBRARY (0x00000008)

0x00000008。 ホーム グループと共有するドキュメント ライブラリが選択されました。

HGSC_PRINTERS (0x00000010)

0x00000010。 ホーム グループと共有するために、インストールされているプリンター デバイスが選択されました。

戻り値

型: HRESULT

成功した場合はS_OKを返し、それ以外の場合は次のような標準エラー値を返します。

リターン コード 説明
ERROR_CANCELLED
ユーザーがウィザードをキャンセルしました。 このエラー コードを抽出するには、 HRESULT_FROM_WIN32 を使用します。
E_UNEXPECTED
コンピューターがホーム グループに参加していないか、ネットワークまたはホーム グループが共有を許可する状態ではありません (ネットワークに接続されていない、別の共有操作が進行中など)。
E_NOINTERFACE
メソッドは、マルチスレッド アパートメント (MTA) スレッドから起動されました。
E_INVALIDARG
sharingchoices パラメーターが NULL です

注釈

このメソッドは、シングルスレッド アパートメント (STA) スレッドから呼び出す必要があります。

次のコードは、 ShowSharingWizard の使用例を示しています。

HRESULT hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);
if (SUCCEEDED(hr))
{
    IHomeGroup *phg;
    
    hr = CoCreateInstance(CLSID_HomeGroup, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&phg));
    if (SUCCEEDED(hr))
    {
        HOMEGROUPSHARINGCHOICES sharingchoices;

        hr = phg->ShowSharingWizard(NULL, &sharingchoices);
        if (SUCCEEDED(hr))
        {
            \\ The user selected to share.
            
            if (sharingchoices & HGSC_MUSICLIBRARY)
            {
                \\ Music
            }
            if (sharingchoices & HGSC_PICTURESLIBRARY)
            {
                \\ Pictures
            }
            if (sharingchoices & HGSC_VIDEOSLIBRARY)
            {
                \\ Videos
            }
            if (sharingchoices & HGSC_DOCUMENTSLIBRARY)
            {
                \\ Documents
            }
            if (sharingchoices & HGSC_PRINTERS)
            {
                \\ Printers
            }
        }
        phg->Release();
    }
    CoUninitialize();
}

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー shobjidl_core.h (Shobjidl.h を含む)