IUpdateDownloaderEx::BeginDownload2 メソッド (wuapi.h)
大事な
一部の情報は、市販される前に大幅に変更される可能性があるプレリリース製品に関連しています。 Microsoft は、ここで提供される情報に関して明示的または黙示的な保証を行いません。
更新プログラムに関連付けられているコンテンツ ファイルの非同期ダウンロードを開始します。
構文
HRESULT BeginDownload2(
DownloadType downloadType,
IUnknown *onProgressChanged,
IUnknown *onCompleted,
VARIANT state,
IDownloadJob **retval
);
パラメーター
downloadType
DownloadType の値、実行するダウンロードの種類、完全なダウンロード、または更新ブートストラップのみをダウンロードすることを指定します。
手記
含まれていない更新プログラムの更新ブートストラップをダウンロードしようとすると、エラー コード WU_E_NOT_SUPPORTEDで失敗します。
onProgressChanged
IDownloadProgressChangedCallback インターフェイス。ダウンロードが完了する前に、ダウンロードの進行状況の変更のために定期的に呼び出されます。
onCompleted
IDownloadCompletedCallback 非同期ダウンロード操作が完了したときに呼び出されるインターフェイスです。
state
IDownloadJob インターフェイスの AsyncState プロパティが返す呼び出し元固有の状態。 呼び出し元は、このパラメーターを使用して、ダウンロード ジョブ オブジェクトに値をアタッチできます。 これにより、呼び出し元は、そのダウンロード ジョブ オブジェクトに関するカスタム情報を後で取得できます。
手記
IDownloadJob インターフェイスの AsyncState プロパティは取得できますが、設定することはできません。 これにより、呼び出し元は、IDownloadJob インターフェイスの AsyncState プロパティに既に設定されているオブジェクトの内容を変更できません。 つまり、AsyncState プロパティに数値が含まれている場合、数値を変更することはできません。 ただし、AsyncState プロパティにセーフ 配列またはオブジェクトが含まれている場合は、セーフ配列またはオブジェクトの内容を変更できます。 この値は、呼び出し元が IUpdateDownloader::EndDownload
retval
IDownloadJob 開始したダウンロード操作で使用できるプロパティとメソッドを含むインターフェイスです。
戻り値
次のいずれかの値を含む HRESULT。
価値 | 形容 |
---|---|
S_OK | 成功。 |
WU_E_INVALID_OPERATION | コンピューターは更新サイトにアクセスできません。 |
WU_E_NO_UPDATE | Windows Update エージェント (WUA) には、コレクション内の更新プログラムがありません。 |
WU_E_NOT_INITIALIZED | Windows Update エージェント (WUA) が初期化されていません。 |
WU_E_NOT_SUPPORTED | 更新ブートストラップのダウンロードは、更新プログラムが含まれていない更新プログラムで試行されました。 |
備考
IDownloadProgressChangedCallback インターフェイスを実装する代わりに、スクリプトを使用して、オートメーション オブジェクトに DISPID 0 を持つ任意の識別子のコールバック ルーチンを実装できます。
IDownloadCompletedCallback インターフェイスを実装する代わりに、スクリプトを使用して、オートメーション オブジェクトに DISPID 0 を持つ任意の識別子のコールバック ルーチンを実装できます。
このメソッドは、インターフェイスを実装しているオブジェクトがロックダウンされている場合に WU_E_INVALID_OPERATION を返します。
このメソッドは、IUpdateDownloader インターフェイスの Updates プロパティが設定されていない場合に WU_E_NO_UPDATE を返します。 このメソッドは、Updates プロパティが空のコレクションに設定されている場合も、WU_E_NO_UPDATE を返します。
ダウンロード ジョブに更新プログラムが含まれている場合、このメソッドは SUS_E_NOT_INITIALIZED を返します。
アプリで非同期 WUA API を使用する場合は、タイムアウト メカニズムの実装が必要になる場合があります。 非同期 WUA 操作を実行する方法の詳細については、「非同期 WUA 操作の
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 11 ビルド 26100 |
ヘッダー | wuapi.h |