Changeset 187
- Timestamp:
- Jun 28, 2013, 9:39:00 AM (11 years ago)
- Location:
- trunk/Utilities/WindowsMediaCodecList
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Utilities/WindowsMediaCodecList/MainDialog.h
r186 r187 494 494 A(IWMStreamConfig3) 495 495 A(IWMVideoMediaProps) 496 A(IWMPropertyVault) 496 497 #undef A 497 498 }; … … 750 751 sText.AppendFormat(_T(" ") _T("Quality: %d") _T("\r\n"), nQuality); 751 752 sText.Append(_T("\r\n")); 753 } 754 _ATLCATCHALL() 755 { 756 _Z_EXCEPTION(); 757 } 758 #pragma endregion 759 #pragma region IWMPropertyVault 760 const CComQIPtr<IWMPropertyVault> pWmPropertyVault = m_pCodecFormatData->m_pWmStreamConfig; 761 if(pWmPropertyVault) 762 _ATLTRY 763 { 764 DWORD nPropertyCount = 0; 765 __C(pWmPropertyVault->GetPropertyCount(&nPropertyCount)); 766 CRoArrayT<CString> PropertyArray; 767 for(DWORD nPropertyIndex = 0; nPropertyIndex < nPropertyCount; nPropertyIndex++) 768 { 769 DWORD nNameLength = 0; 770 WMT_ATTR_DATATYPE nType; 771 DWORD nValueDataSize = 0; 772 pWmPropertyVault->GetPropertyByIndex(nPropertyIndex, NULL, &nNameLength, &nType, NULL, &nValueDataSize); 773 CTempBufferT<WCHAR> pszName(nNameLength + 1); 774 CTempBufferT<BYTE> pnValueData(nValueDataSize + 2); 775 __C(pWmPropertyVault->GetPropertyByIndex(nPropertyIndex, pszName, &nNameLength, &nType, pnValueData, &nValueDataSize)); 776 CString sProperty; 777 BOOL bHandled = FALSE; 778 switch(nType) 779 { 780 case WMT_TYPE_DWORD: 781 if(nValueDataSize && !(nValueDataSize % sizeof (DWORD))) 782 { 783 const DWORD* pnValues = (const DWORD*) (const BYTE*) pnValueData; 784 const SIZE_T nValueCount = nValueDataSize / sizeof (DWORD); 785 if(nValueCount == 1) 786 sProperty = AtlFormatString(_T("%d 0x%02X"), pnValues[0], pnValues[0]); 787 else 788 sProperty = AtlFormatString(_T("0x%02X, ..."), pnValues[0]); 789 bHandled = TRUE; 790 } 791 break; 792 case WMT_TYPE_STRING: 793 // TODO: ... 794 break; 795 case WMT_TYPE_BINARY: 796 // TODO: ... 797 break; 798 case WMT_TYPE_BOOL: 799 if(nValueDataSize && !(nValueDataSize % sizeof (BOOL))) 800 { 801 const BOOL* pnValues = (const BOOL*) (const BYTE*) pnValueData; 802 const SIZE_T nValueCount = nValueDataSize / sizeof (BOOL); 803 if(nValueCount == 1) 804 sProperty = AtlFormatString(_T("%d"), pnValues[0]); 805 else 806 sProperty = AtlFormatString(_T("%d, ..."), pnValues[0]); 807 bHandled = TRUE; 808 } 809 break; 810 case WMT_TYPE_QWORD: 811 // TODO: ... 812 break; 813 case WMT_TYPE_WORD: 814 // TODO: ... 815 break; 816 case WMT_TYPE_GUID: 817 // TODO: ... 818 break; 819 } 820 if(!bHandled) 821 sProperty = _T("???"); 822 sProperty += AtlFormatString(_T(" (Type %d, Size %d)"), nType, nValueDataSize); 823 _W(PropertyArray.Add(AtlFormatString(_T("%ls: %s"), (LPCWSTR) pszName, sProperty)) >= 0); 824 } 825 if(nPropertyCount) 826 { 827 sText.Append(_T("IWMPropertyVault:\r\n")); 828 sText.AppendFormat(_T(" ") _T("PropertyCount: %d") _T("\r\n"), nPropertyCount); 829 for(SIZE_T nIndex = 0; nIndex < PropertyArray.GetCount(); nIndex++) 830 sText.AppendFormat(_T(" ") _T("%s") _T("\r\n"), PropertyArray[nIndex]); 831 sText.Append(_T("\r\n")); 832 } 752 833 } 753 834 _ATLCATCHALL() -
trunk/Utilities/WindowsMediaCodecList/WindowsMediaCodecList.rc
r186 r187 122 122 123 123 VS_VERSION_INFO VERSIONINFO 124 FILEVERSION 1, 0, 0, 22 3124 FILEVERSION 1, 0, 0, 228 125 125 PRODUCTVERSION 1,0,0,1 126 126 FILEFLAGSMASK 0x3fL … … 141 141 VALUE "Created By", "Roman Ryltsov <roman@alax.info>" 142 142 VALUE "FileDescription", "Windows Media Codec List Utility" 143 VALUE "FileVersion", "1, 0, 0, 22 3\0"143 VALUE "FileVersion", "1, 0, 0, 228\0" 144 144 VALUE "InternalName", "WindowsMediaCodecList" 145 145 VALUE "LegalCopyright", "Copyright © Alax.Info, Roman Ryltsov, 2008-2013"
Note: See TracChangeset
for help on using the changeset viewer.