SP_REGISTER_CONTROL_STATUSA 構造体 (setupapi.h)

SP_REGISTER_CONTROL_STATUS構造体には、RegisterDlls INF ディレクティブを使用して Windows 2000 上の DLL を自己登録するために登録または登録解除されているファイルに関する情報が含まれています。

SetupInstallFromInfSection がコールバック ルーチンにSPFILENOTIFY_STARTREGISTRATIONまたはSPFILENOTIFY_ENDREGISTRATION通知を送信する場合、呼び出し元は MsgHandler パラメーターでSP_REGISTER_CONTROL_STATUS構造体へのポインターを提供する必要があります。

構文

typedef struct _SP_REGISTER_CONTROL_STATUSA {
  DWORD cbSize;
  PCSTR FileName;
  DWORD Win32Error;
  DWORD FailureCode;
} SP_REGISTER_CONTROL_STATUSA, *PSP_REGISTER_CONTROL_STATUSA;

メンバー

cbSize

FileName

登録または登録解除されているファイルの完全修飾パス。

Win32Error

SPFILENOTIFY_STARTREGISTRATION通知の場合、このメンバーは使用されず、NO_ERRORに設定する必要があります。 SPFILENOTIFY_ENDREGISTRATION通知の場合は、 を システム エラー コードに設定します。

FailureCode

SPFILENOTIFY_STARTREGISTRATION通知の場合、このメンバーは使用されず、SPREG_SUCCESSに設定する必要があります。 SPFILENOTIFY_ENDREGISTRATION通知の場合は、登録の結果を示す次のいずれかのエラー コードに設定します。

説明
SPREG_SUCCESS
ファイルが正常に登録または登録解除されました。 WinError は使用されません。
SPREG_LOADLIBRARY
ファイルの LoadLibrary が失敗しました。 WinError には、コンポーネントからの拡張エラー コードが含まれています。
SPREG_GETPROCADDR
ファイルに対して GetProcAddress が失敗しました。 WinError には、コンポーネントからの拡張エラー コードが含まれています。
SPREG_REGSVR
DLLRegisterServer エントリ ポイントがエラーを返しました。 WinError には、コンポーネントからの拡張エラー コードが含まれています。
SPREG_DLLINSTALL
DLLInstall エントリ ポイントがエラーを返しました。 WinError には、コンポーネントからの拡張エラー コードが含まれています。
SPREG_TIMEOUT
ファイルの登録または登録解除が、指定されたタイムアウトを超えました。 WinError は ERROR_TIMEOUT に設定されています。
SPREG_UNKNOWN
不明な理由で、ファイルの登録または登録解除に失敗しました。 WinError は 、コンポーネントからの拡張エラー コードを示します。

解説

注意

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

要件

   
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
Header setupapi.h

関連項目

概要

SPFILENOTIFY_ENDREGISTRATION

SPFILENOTIFY_STARTREGISTRATION

SetupInstallFromInfSection

構造体