Creación de un dispositivo
Una vez que una aplicación tiene el identificador de dispositivo de un dispositivo determinado, puede llamar al método IWiaDevMgr::CreateDevice o IWiaDevMgr2::CreateDevice, que crea un árbol jerárquico de objetos IWiaItem oIWiaItem2 que representan un dispositivo de creación de imágenes y las camas de examen de imágenes y carpetas contenidas en ese dispositivo.
En el ejemplo siguiente de la aplicación de ejemplo WiaSSamp se implementa una función que toma un identificador de dispositivo como parámetro. Para obtener información sobre cómo obtener un identificador de dispositivo para un dispositivo determinado, consulte Leer las propiedades del dispositivo.
//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;
}
En este ejemplo, pWiaDevMgr es un puntero a la interfaz IWiaDevMgr o IWiaDevMgr2 , y ppWiaDevice es una variable que, después de la llamada a IWiaDevMgr::CreateDevice (o a IWiaDevMgr2::CreateDevice), contiene la dirección de un puntero al elemento raíz del árbol que representa el dispositivo recién creado.