Freigeben über


Erstellen eines Geräts

Sobald eine Anwendung über die Geräte-ID eines bestimmten Geräts verfügt, kann sie die IWiaDevMgr::CreateDevice - oder IWiaDevMgr2::CreateDevice-Methodeaufrufen, die eine hierarchische Struktur von IWiaItem- oder IWiaItem2-Objekten erstellt, die ein Bildbildgerät und die Auf diesem Gerät enthaltenen Bilderscanbetten und Ordner darstellen.

Im folgenden Beispiel aus der Beispielanwendung WiaSSamp wird eine Funktion implementiert, die eine Geräte-ID als Parameter akzeptiert. Informationen zum Abrufen einer Geräte-ID für ein bestimmtes Gerät finden Sie unter Lesen von Geräteeigenschaften.

    //XP or earlier:
    HRESULT CreateWiaDevice( IWiaDevMgr *pWiaDevMgr, BSTR bstrDeviceID, IWiaItem **ppWiaDevice ) 
    //Vista or later:
    HRESULT CreateWiaDevice( IWiaDevMgr2 *pWiaDevMgr, BSTR bstrDeviceID, IWiaItem2 **ppWiaDevice ) 
    {
        //
        // Validate arguments
        //
        if (NULL == pWiaDevMgr || NULL == bstrDeviceID || NULL == ppWiaDevice)
        {
            return E_INVALIDARG;
        }

        //
        // Initialize out variables
        //
        *ppWiaDevice = NULL;

        //
        // Create the WIA Device
        //
        HRESULT hr = pWiaDevMgr->CreateDevice( bstrDeviceID, ppWiaDevice );

        //
        // Return the result of creating the device
        //
        return hr;
    }

In diesem Beispiel ist pWiaDevMgr ein Zeiger auf die IWiaDevMgr - oder IWiaDevMgr2-Schnittstelle , und ppWiaDevice ist eine Variable, die nach dem Aufruf von IWiaDevMgr::CreateDevice (oder auf IWiaDevMgr2::CreateDevice) die Adresse eines Zeigers auf das Stammelement der Struktur enthält, das das neu erstellte Gerät darstellt.