Метод IWMDMOperation::GetObjectAttributes (mswmdm.h)
Метод GetObjectAttributes позволяет приложению указать атрибуты для объекта, записываемого на устройство. Windows Media диспетчер устройств вызывает этот метод перед записью файла на устройство, чтобы изучить атрибуты файла.
Синтаксис
HRESULT GetObjectAttributes(
[out] DWORD *pdwAttributes,
[out] _WAVEFORMATEX *pFormat
);
Параметры
[out] pdwAttributes
Указатель на DWORD , указывающий атрибуты, определенные в методе IWMDMStorage::GetAttributes .
[out] pFormat
Указатель на структуру _WAVEFORMATEX , указывающую формат звука для файлов с атрибутами звуковых данных.
Возвращаемое значение
Приложение должно вернуть одно из следующих значений HRESULT .
Код возврата | Описание |
---|---|
|
Операция чтения должна быть продолжена. |
|
Операция чтения должна быть отменена без завершения. |
|
Произошла неуказанное сообщение об ошибке, и операция чтения должна быть отменена без завершения. |
Комментарии
При передаче данных на устройство необходимо предоставить атрибуты объекта для оптимальной передачи.
Примеры
Следующий код C++ реализует метод GetObjectAttributes . Он пытается определить, является ли считываемый файл (m_File) файлом или папкой, и задать возвращаемые атрибуты соответствующим образом.
HRESULT GetObjectAttributes(DWORD* pdwAttributes, _WAVEFORMATEX* pFormat)
{
// TODO: Display the message: IWMDMOperation event--GetObjectAttributes.
*pdwAttributes = WMDM_FILE_ATTR_FILE |
WMDM_STORAGE_ATTR_REMOVABLE |
WMDM_FILE_ATTR_AUDIO;
BY_HANDLE_FILE_INFORMATION fileInformation;
if (GetFileInformationByHandle(m_File, &fileInformation))
{
if (fileInformation.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
*pdwAttributes |= WMDM_FILE_ATTR_FOLDER;
else
*pdwAttributes |= WMDM_FILE_ATTR_FILE;
if (fileInformation.dwFileAttributes & FILE_ATTRIBUTE_READONLY)
*pdwAttributes |= FILE_ATTRIBUTE_READONLY;
}
return S_OK;
}
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | mswmdm.h |
Библиотека | Mssachlp.lib |