Share via


IAttachmentExecute::Execute メソッド (shobjidl_core.h)

添付ファイルに対してアクションを実行します。

構文

HRESULT Execute(
  [in]            HWND    hwnd,
  [in, optional]  LPCWSTR pszVerb,
  [out, optional] HANDLE  *phProcess
);

パラメーター

[in] hwnd

型: HWND

親ウィンドウのハンドル。

[in, optional] pszVerb

種類: LPCWSTR

ファイルに対して実行するアクションを指定する動詞を含む null で終わる文字列へのポインター。 有効な文字列については、ShellExecutelpOperation パラメーターを参照してください。 この値には NULL を指定できます。

[out, optional] phProcess

種類: HANDLE*

同期操作に使用されるソース プロセスへのハンドルへのポインター。 この値には NULL を指定できます。

戻り値

型: HRESULT

このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。

注釈

IAttachmentExecute::Execute を呼び出す前に、有効なローカル パスを使用して IAttachmentExecute::SetLocalPath を呼び出し、ファイルをその場所にコピーする必要があります。

プロンプトが表示された場合、IAttachmentExecute::Execute は、ATTACHMENT_ACTION_EXEC値を使用して IAttachmentExecute::P rompt を呼び出します。

IAttachmentExecute::Execute は、ウイルス スキャナーまたはその他の信頼サービスを実行して、ファイルを実行する前に検証する場合があります。 これらのサービスは、ファイルを削除または変更できることに注意してください。

IAttachmentExecute::Execute は、NTFS 代替データ ストリーム (ADS) 内のローカル パスに 証拠 を添付できます。

phProcessNULL でない場合、IAttachmentExecute::Execute は同期プロセスとして動作し、使用可能な場合は HPROCESS を返します。 phProcessNULL の場合、IAttachmentExecute::Execute は非同期プロセスとして動作します。 これは、呼び出し元のアプリケーションにメッセージ ポンプと有効期間の長いウィンドウがあることを意味します。

メソッドが戻るときに phProcess が指すハンドルが NULL 以外の場合、呼び出し元のアプリケーションは CloseHandle を呼び出して、ハンドルが不要になったときにハンドルを解放します。

要件

要件
サポートされている最小のクライアント WINDOWS XP と SP2 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー shobjidl_core.h (Shobjidl.h を含む)
[DLL] Shdocvw.dll (バージョン 6.0 以降)