Метод 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, которая содержит команду, указывающую действие, выполняемое с файлом. Сведения о допустимых строках см. в параметре lpOperation в ShellExecute . Это значение может иметь значение NULL.
[out, optional] phProcess
Тип: HANDLE*
Указатель на дескриптор исходного процесса, используемый для синхронной операции. Это значение может иметь значение NULL.
Возвращаемое значение
Тип: HRESULT
Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Перед вызовом IAttachmentExecute::Execute необходимо вызвать IAttachmentExecute::SetLocalPath с допустимым локальным путем и скопировать файл в это расположение.
Если указан запрос, IAttachmentExecute::Execute вызывает IAttachmentExecute::P rompt , используя значение ATTACHMENT_ACTION_EXEC .
IAttachmentExecute::Execute может запускать сканеры вирусов или другие доверенные службы для проверки файла перед его выполнением. Обратите внимание, что эти службы могут удалять или изменять файл.
IAttachmentExecute::Execute может прикрепить свидетельство к локальному пути в альтернативном потоке данных NTFS (ADS).
Если phProcess не имеет значение NULL, IAttachmentExecute::Execute работает как синхронный процесс и возвращает HPROCESS, если он доступен. Если phProcess имеет значение NULL, IAttachmentExecute::Execute работает как асинхронный процесс. Это означает, что вызывающее приложение имеет насос сообщений и окно с длительным сроком существования.
Если дескриптор, на который указывает phProcess , не имеет значения NULL при возврате метода, вызывающее приложение отвечает за вызов CloseHandle , чтобы освободить дескриптор, когда он больше не нужен.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP с пакетом обновления 2 (SP2) [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | shobjidl_core.h (включая Shobjidl.h) |
DLL | Shdocvw.dll (версия 6.0 или более поздняя) |