次の方法で共有


IAppPublisher インターフェイス (shappmgr.h)

コントロール パネルの [プログラムの追加と削除] を使用してアプリケーションを発行するためのメソッドを公開します。 これは、この目的のために実装されるプリンシパル インターフェイスです。

継承

IAppPublisher インターフェイスは、IUnknown インターフェイスから継承されます。 IAppPublisher には、次の種類のメンバーもあります。

メソッド

IAppPublisher インターフェイスには、これらのメソッドがあります。

 
IAppPublisher::EnumApps

特定のカテゴリのアプリケーション発行元によって発行されたすべてのアプリケーションを列挙するための列挙子を作成します。
IAppPublisher::GetCategories

アプリケーション発行元によって提供されるカテゴリを一覧表示する構造体を取得します。
IAppPublisher::GetNumberOfApps

互換性のために残されています。 アプリケーションコントロール パネルプログラムの追加と削除のクライアントは、E_NOTIMPLを返すことができます。
IAppPublisher::GetNumberOfCategories

互換性のために残されています。 アプリケーションコントロール パネルプログラムの追加と削除のクライアントは、E_NOTIMPLを返す場合があります。

注釈

コントロール パネルでプログラムの追加と削除を行うと、登録済みのパブリッシャー オブジェクトが作成され、IAppPublisher インターフェイスが要求されます。 発行されたアプリケーション オブジェクトは、 IAppPublisher を使用して作成するアプリケーション列挙子を使用して作成できます。

プログラムの追加と削除 は、公開されたアプリケーションの一覧をパブリッシャーから収集し、発行元を使用して Microsoft Active Directory でこれらのアプリケーションを表示します。 ユーザーが [プログラムの追加と削除] で [新しいプログラムの追加] をクリックすると、発行されたアプリケーションの一覧が表示されます。

アプリケーションは、次のコンポーネント オブジェクト モデル (COM) インターフェイスを使用して 、プログラムの追加と削除 で発行できます。

これらのインターフェイスを実装するときは、COM オブジェクトをレジストリに登録する必要があります。 発行元を登録するには、次のレジストリ キーの下にオブジェクトのクラス識別子 (CLSID) を追加します。
HKEY_LOCAL_MACHINE
   Software
      Microsoft
         Windows
            CurrentVersion
               AppManagement
                  Publishers

たとえば、発行元が "My Publisher" という名前の場合、"My Publisher" という名前の "Publishers" の下に新しいキーを作成し、その既定のREG_SZ値をパブリッシャーの CLSID として作成します。

HKEY_LOCAL_MACHINE
   Software
      Microsoft
         Windows
            CurrentVersion
               AppManagement
                  Publishers
                     My Publisher
                        (Default) = {4D05CD3D-FFED-46bb-B9F1-321C26BE6362}

一般的な COM サーバー登録エントリを次のように作成することもできます。

HKEY_CLASSES_ROOT
   CLSID
      {469EE8CE-1B86-4524-9042-AAA44FD9C8F2}
         (Default) = Sample Applications Publisher
         InProcServer32
            (Default) = pubdemo.dll
            ThreadingModel = Apartment

この方法でパブリッシャーを登録すると、[プログラムの追加と削除] では、オブジェクトの CoCreateInstance を呼び出し、[新しいプログラムの追加] ビューが設定されたときに適切な IAppPublisher インターフェイスを要求することで、オブジェクトのインスタンスが作成されます。 IAppPublisher を使用すると、プログラムの追加と削除によって、アプリケーション列挙子 (IEnumPublishedApps) と、発行されたアプリケーションを説明する情報が取得されます。 IPublishedApp の実装では、関連付けられているアプリケーションを IPublishedApp::Install メソッドにインストールする必要があります。 ユーザーがユーザー インターフェイスの [追加] または [後で 追加 ] ボタンをクリックすると、プログラムの 追加 と削除でこのメソッドが呼び出されます。

要件

要件
サポートされている最小のクライアント Windows XP、Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー shappmgr.h

こちらもご覧ください

IEnumPublishedApps

IPublishedApp