void IltmmCaptureInputs_get_NearestSelection_Example (IltmmCapture* pCapture) { // After the capture properties dialog has been invoked.. IltmmCaptureInputs* pInputs; long index, count; IltmmCapture_get_VideoInputs(pCapture, &pInputs); IltmmCaptureInputs_get_Count(pInputs, &count); if(count > 0) { IltmmCaptureInputs_get_Selection(pInputs, &index); if( index == -1 ) { if(MessageBox(NULL, "The video input has been altered without changing other related inputs. Would you like the other related inputs changed automatically?", NULL, MB_YESNO) == IDYES) { // get the closest selection and use it; // this will fix the problem of unmatched audio/video inputs. IltmmCaptureInputs_get_NearestSelection(pInputs, &index); IltmmCaptureInputs_put_Selection(pInputs, index); } } } IUnknown_Release(pInputs); }