Partager via


Méthode IStillImageW ::LaunchApplicationForDevice (sti.h)

La méthode IStillImage ::LaunchApplicationForDevice démarre une application spécifiée pour un appareil d’image fixe spécifié.

Syntaxe

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

Paramètres

[in] pwszDeviceName

Pointeur fourni par l’appelant vers une chaîne représentant un nom d’appareil interne, obtenue en appelant IStillImage ::GetSTILaunchInformation ou IStillImage ::GetDeviceList.

[in] pwszAppName

Pointeur fourni par l’appelant vers une chaîne représentant le nom court d’une application inscrite en appelant IStillImage ::RegisterLaunchApplication.

[in] pStiNotify

Pointeur fourni par l’appelant vers une structure STINOTIFY décrivant un événement d’appareil. En règle générale, le GUID de l’événement est obtenu en appelant IStiDevice ::GetLastNotificationData.

Valeur retournée

Si l’opération réussit, la méthode retourne S_OK. Sinon, il retourne l’un des codes d’erreur préfixés STIERR définis dans stierr.h.

Remarques

La méthode IStillImage ::LaunchApplicationForDevice peut uniquement démarrer les applications qui se sont inscrites en appelant IStillImage ::RegisterLaunchApplication. L’événement spécifié doit être pris en charge par l’appareil spécifié. La méthode imite l’occurrence d’un événement d’appareil et est utile pour les applications qui interceptent des événements d’appareils et les redirigent. Lorsqu’un utilisateur démarre le scanneur, une telle application peut, par exemple, demander à l’utilisateur s’il souhaite stocker l’image numérisée, effectuer une copie ou envoyer une télécopie.

Avant d’appeler IStillImage ::LaunchApplicationForDevice, les clients de l’interface COM IStillImage doivent appeler IStillImage ::StiCreateInstance pour obtenir un pointeur d’interface IStillImage .

Exemples

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);
}

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête sti.h (inclure Sti.h)