For complete code, refer to the CNVWM demo.
LPTSTR OLE2A(LPCOLESTR lpw){static CHAR convert[512];if(!lpw)return NULL;convert[0] = '\0';WideCharToMultiByte(CP_ACP, 0, lpw, -1, convert, 512, NULL, NULL);return convert;}BOOL IltmmWMProfile_get_Version_Example ( ){long count = 0;long streamCount = 0;long versionNum = 0;long lVersion;char data[10];IltmmWMProfile *pProfile = NULL;IltmmWMProfileManager *pProfileManager = NULL;BSTR bstrString;int i;// Create a profile managerHRESULT 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_0IltmmWMProfileManager_get_SystemProfileVersion(pProfileManager, &lVersion);if(lVersion != ltmmWMT_VER_4_0){IltmmWMProfileManager_Release(pProfileManager);return TRUE;}hr = IltmmWMProfileManager_get_SystemProfileCount(pProfileManager, &count);if(FAILED(hr)){IltmmWMProfileManager_Release(pProfileManager);return TRUE;}for(i = 0; i < count; i++){hr = IltmmWMProfileManager_LoadSystemProfile(pProfileManager, i, &pProfile);if(FAILED(hr)){IltmmWMProfileManager_Release(pProfileManager);return TRUE;}// Display the nameIltmmWMProfile_get_Name(pProfile, &bstrString);printf ("%s", OLE2A(bstrString));SysFreeString(bstrString);// Add the description, version and the stream countIltmmWMProfile_get_Description(pProfile, &bstrString);printf ("%s", OLE2A(bstrString));SysFreeString(bstrString);IltmmWMProfile_get_Version(pProfile, &versionNum);switch(versionNum){case ltmmWMT_VER_4_0:printf ("%s", "ltmmWMT_VER_4_0");break;case ltmmWMT_VER_7_0:printf ("%s", "ltmmWMT_VER_7_0");break;case ltmmWMT_VER_8_0:printf ("%s", "ltmmWMT_VER_8_0");break;case ltmmWMT_VER_9_0:printf ("%s", "ltmmWMT_VER_9_0");break;default:printf ("%s", "UNKNOWN");break;};// Display the number of streamsIltmmWMProfile_get_StreamCount(pProfile, &streamCount);printf ("%s", ltoa(streamCount, data, 10));IltmmWMProfile_Release(pProfile);pProfile = NULL;}IltmmWMProfileManager_Release(pProfileManager);pProfileManager = NULL;return TRUE;}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
