디바이스 만들기

애플리케이션에 지정된 디바이스의 디바이스 ID가 있으면 IWiaDevMgr::CreateDevice 또는 IWiaDevMgr2::CreateDevice메서드를 호출하여 이미징 디바이스와 이미지 검사 침대를 나타내는 IWiaItem 또는 IWiaItem2 개체의 계층 트리와 해당 디바이스에 포함된 폴더를 만들 수 있습니다.

샘플 애플리케이션 WiaSSamp의 다음 예제에서는 디바이스 ID를 매개 변수로 사용하는 함수를 구현합니다. 특정 디바이스에 대한 디바이스 ID를 가져오는 방법에 대한 자세한 내용은 디바이스 속성 읽기를 참조하세요.

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

이 예제에서 pWiaDevMgrIWiaDevMgr 또는 IWiaDevMgr2 인터페이스에 대한 포인터이며, ppWiaDevice는 IWiaDevMgr::CreateDevice(또는 IWiaDevMgr2::CreateDevice)를 호출한 후 새로 만든 디바이스를 나타내는 트리의 루트 항목에 대한 포인터의 주소를 포함하는 변수입니다.