Поделиться через


Метод IStillImageW::LaunchApplicationForDevice (sti.h)

Метод IStillImage::LaunchApplicationForDevice запускает указанное приложение для указанного устройства с изображением.

Синтаксис

HRESULT LaunchApplicationForDevice(
  [in] LPWSTR      pwszDeviceName,
  [in] LPWSTR      pwszAppName,
  [in] LPSTINOTIFY pStiNotify
);

Параметры

[in] pwszDeviceName

Предоставленный вызывающим абонентом указатель на строку, представляющую имя внутреннего устройства, полученную путем вызова метода IStillImage::GetSTILaunchInformation или IStillImage::GetDeviceList.

[in] pwszAppName

Предоставленный вызывающим элементом указатель на строку, представляющую короткое имя приложения, которое было зарегистрировано путем вызова метода IStillImage::RegisterLaunchApplication.

[in] pStiNotify

Предоставленный вызывающим абонентом указатель на структуру STINOTIFY , описывающую событие устройства. Как правило, GUID события получается путем вызова IStiDevice::GetLastNotificationData.

Возвращаемое значение

Если операция выполнена успешно, метод возвращает S_OK. В противном случае возвращается один из кодов ошибок с префиксом STIERR, определенных в файле stierr.h.

Комментарии

Метод IStillImage::LaunchApplicationForDevice может запускать только те приложения, которые зарегистрировались, вызвав метод IStillImage::RegisterLaunchApplication. Указанное событие должно быть событием, которое поддерживает указанное устройство. Метод имитирует возникновение события устройства и полезен для приложений, которые перехватывают события с устройств и перенаправляет их. Когда пользователь запускает сканер, такое приложение может, например, спросить пользователя, нужно ли сохранить отсканированное изображение, сделать копию или отправить факс.

Перед вызовом IStillImage::LaunchApplicationForDevice клиенты COM-интерфейса IStillImage должны вызвать IStillImage::StiCreateInstance , чтобы получить указатель интерфейса IStillImage .

Примеры

HRESULT hRes;
hRes = pStiDevice->GetLastNotificationData(&pNotify);
if (!SUCCEEDED(hRes))
{
    DisplayOutput("->GetLastNotificationData returned %xh %u",
        hReturn,hReturn);
}

// Process or filter events here

// Send event on to app
hRes = pSti->LaunchApplicationForDevice(pStiInfoPtr->szDeviceInternalName,
     L"AppName",
     pNotify);
if (!SUCCEEDED(hRes))
{
    DisplayOutput("->LaunchApplicationForDevice on %S returned %xh %u",
        pStiInfoPtr->szDeviceInternalName,hReturn,hReturn);
}

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть sti.h (включая Sti.h)