次の方法で共有


ACTCTXA 構造体 (winbase.h)

ACTCTX 構造体は、アクティブ化コンテキストを作成するために CreateActCtx 関数によって使用されます。

構文

typedef struct tagACTCTXA {
  ULONG   cbSize;
  DWORD   dwFlags;
  LPCSTR  lpSource;
  USHORT  wProcessorArchitecture;
  LANGID  wLangId;
  LPCSTR  lpAssemblyDirectory;
  LPCSTR  lpResourceName;
  LPCSTR  lpApplicationName;
  HMODULE hModule;
} ACTCTXA, *PACTCTXA;

メンバーズ

cbSize

この構造体のサイズ (バイト単位)。 これは、この構造体のバージョンを決定するために使用されます。

dwFlags

この構造体に含まれる値の使用方法を示すフラグ。 dwFlags 内の未定義のビット 0 に設定します。 未定義のビットが 0 に設定されていない場合、アクティブ化コンテキストを作成 CreateActCtx の呼び出しは失敗し、無効なパラメーター エラー コードが返されます。

ビット フラグ 意味
ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID
1
0x001
ACTCTX_FLAG_LANGID_VALID
2
0x002
ACTCTX_FLAG_ASSEMBLY_DIRECTORY_VALID
4
0x004
ACTCTX_FLAG_RESOURCE_NAME_VALID
8
0x008
ACTCTX_FLAG_SET_PROCESS_DEFAULT
16
0x010
ACTCTX_FLAG_APPLICATION_NAME_VALID
32
0x020
ACTCTX_FLAG_HMODULE_VALID
128
0x080

lpSource

アクティブ化コンテキストの作成に使用するマニフェスト ファイルまたは PE イメージのパスを指定する null で終わる文字列。 このパスが EXE または DLL ファイルを参照する場合は、lpResourceName メンバー が必要です。

wProcessorArchitecture

使用されるプロセッサの種類を識別します。 システムのプロセッサ アーキテクチャを指定します。

この値には、次のいずれかの値を指定できます。

wLangId

使用する言語マニフェストを指定します。 既定値は、現在のユーザーの現在の UI 言語です。

要求された言語が見つからない場合は、次の順序で近似値が検索されます。

  • 現在のユーザーの特定の言語。 たとえば、米国英語 (1033) などです。
  • 現在のユーザーのプライマリ言語。 たとえば、英語 (9) などです。
  • 現在のシステムの特定の言語。
  • 現在のシステムのプライマリ言語。
  • 非特定の世界言語。 言語に依存しない (0)。

lpAssemblyDirectory

アクティブ化コンテキストのアセンブリがシステム全体のストアに存在しない場合にプライベート アセンブリプローブを実行するベース ディレクトリ。

lpResourceName

hModule または lpSource で指定された PE から読み込まれるリソース名を含む null で終わる文字列へのポインター。 リソース名が整数の場合は、MAKEINTRESOURCE を使用してこのメンバーを設定します。 このメンバーは、lpSource が EXE または DLL を参照する場合に必要です。

lpApplicationName

現在のアプリケーションの名前。 このメンバーの値が null に設定されている場合は、現在のプロセスを起動した実行可能ファイルの名前が使用されます。

hModule

既に DLL を読み込み、それを使用して lpSourceのパスを使用するのではなく、アクティブ化コンテキストを作成する場合は、lpSource ではなく、このメンバーを使用します。 このモジュール リソースを検索する規則については、lpResourceName を参照してください。

備考

lpSource メンバーの値によって識別されるファイルが PE イメージ ファイルの場合、CreateActCtx は、同じディレクトリ内にある .manifest ファイルと PE イメージ ファイル内の最初のRT_MANIFEST リソース内のマニフェストを検索します。 イメージから特定の名前付きリソースを検索するには、lpResourceName をリソースの名前に設定し、dwFlags メンバーにACTCTX_FLAG_RESOURCE_NAME_VALIDを追加します。 リソース名の指定の詳細については、FindResource を参照してください。

ほとんどの場合、呼び出し元は、dwFlags メンバーのACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALIDフラグとACTCTX_FLAG_LANGID_VALID フラグを設定しないでください。 また、ほとんどの場合、lpResourceName メンバーの値を null に設定する必要があります。

アクティブ化コンテキスト 作成する実行可能ファイルがアプリケーションのホストである場合、lpApplicationName および lpAssemblyDirectory の値は null に設定されません。 この場合、ホストは、構成ファイルを検索したり、エラーを報告したりするために、アプリケーションに別の名前を設定できます。

手記

winbase.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして ACTCTX を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows XP [デスクトップ アプリのみ]
サポートされる最小サーバー Windows Server 2003 [デスクトップ アプリのみ]
ヘッダー winbase.h (Windows.h を含む)

関連項目

ACTCTX_SECTION_KEYED_DATA

CreateActCtx の