IltmmCapture::SaveStillDIB Example for C

USES_CONVERSION; 

HRESULT hr = IltmmCapture_StartCapture(m_capture, ltmmCapture_Mode_Still); 
if(SUCCEEDED(hr)) 
{
      BSTR bstrFileName = SysAllocString(T2OLE("c:\\dib.bmp"));
      hr = IltmmCapture_SaveStillDIB(m_capture, bstrFileName, -1); 
      IltmmCapture_StopCapture(m_capture); 
      SysFreeString(bstrFileName);   
}

LPOLESTR T2OLE(LPCTSTR lpt)
{
   static OLECHAR lpw[512];

   if(!lpt)
      return NULL;

   lpw[0] = L'\0';

   MultiByteToWideChar(CP_ACP, 0, lpt, -1, lpw, 512);

   return lpw;
}

L_MULTIMEDIATEX_API void IltmmCapture_SaveStillDIB_Example (IltmmCapture* pCapture)
{
   HRESULT hr = IltmmCapture_StartCapture(pCapture, ltmmCapture_Mode_Still); 

   if(SUCCEEDED(hr)) 
   {
	   BSTR bstrFileName = SysAllocString(T2OLE("c:\\dib.bmp"));

	   hr = IltmmCapture_SaveStillDIB(pCapture, bstrFileName, -1); 

	   IltmmCapture_StopCapture(pCapture); 

	   SysFreeString(bstrFileName);   
   }
}