IltmmWMProfile::get_Version Example for C++

For complete code, refer to the CNVWM demo.

BOOL DisplaySystemProfiles() 
{ 
   // ATL Macro 
   USES_CONVERSION; 
   long count = 0; 
   long streamCount = 0; 
   long versionNum = 0; 
   long lVersion; 
   char data[10]; 
    
   IltmmWMProfile *pProfile = NULL; 
   IltmmWMProfileManager *pProfileManager = NULL; 
   BSTR bstrString; 
 
   // Create a profile manager 
   HRESULT hr = CoCreateInstance(CLSID_ltmmWMProfileManager, 
      NULL, 
      CLSCTX_INPROC_SERVER, 
      IID_IltmmWMProfileManager, 
      (void**) &pProfileManager); 
 
   if(FAILED(hr)) 
      return TRUE; 
 
   // show only system profiles for version ltmmWMT_VER_4_0 
   pProfileManager->get_SystemProfileVersion(&lVersion); 
   if (lVersion != ltmmWMT_VER_4_0) 
   { 
      pProfileManager->Release(); 
      return TRUE; 
   } 
    
   hr = pProfileManager->get_SystemProfileCount(&count); 
   if (FAILED(hr)) 
   { 
      pProfileManager->Release(); 
      return TRUE; 
   } 
   for (int i = 0; i < count; i++) 
   { 
      hr = pProfileManager->LoadSystemProfile(i, &pProfile); 
      if(FAILED(hr)) 
      { 
         pProfileManager->Release(); 
         return TRUE; 
      } 
      // Display the name... 
      pProfile->get_Name(&bstrString); 
      wprintf(TEXT("%s\n"), bstrString); 
      SysFreeString(bstrString); 
       
      // Add the description, version and the stream count 
      pProfile->get_Description(&bstrString); 
      wprintf(TEXT("%s\n"), bstrString); 
      SysFreeString(bstrString); 
       
      pProfile->get_Version(&versionNum); 
      switch (versionNum) 
      { 
      case ltmmWMT_VER_4_0: 
         wprintf(TEXT("ltmmWMT_VER_4_0\n")); 
         break; 
      case ltmmWMT_VER_7_0: 
         wprintf(TEXT("ltmmWMT_VER_7_0\n")); 
         break; 
      case ltmmWMT_VER_8_0: 
         wprintf(TEXT("ltmmWMT_VER_8_0\n")); 
         break; 
      case ltmmWMT_VER_9_0: 
         wprintf(TEXT("ltmmWMT_VER_9_0\n")); 
         break; 
      default: 
         wprintf(TEXT("UNKNOWN\n")); 
         break; 
      }; 
 
      // Display the number of streams 
      pProfile->get_StreamCount(&streamCount); 
      wprintf(TEXT("%s\n"), ltoa(streamCount, data, 10)); 
       
      pProfile->Release(); 
      pProfile = NULL; 
   } 
    
   pProfileManager->Release(); 
   pProfileManager = NULL; 
    
   return TRUE; 
} 

Help Version 20.0.2019.8.26
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2019 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Multimedia C API Help