Поделиться через


Метод IWMDMOperation::GetObjectAttributes (mswmdm.h)

Метод GetObjectAttributes позволяет приложению указать атрибуты для объекта, записываемого на устройство. Windows Media диспетчер устройств вызывает этот метод перед записью файла на устройство, чтобы изучить атрибуты файла.

Синтаксис

HRESULT GetObjectAttributes(
  [out] DWORD         *pdwAttributes,
  [out] _WAVEFORMATEX *pFormat
);

Параметры

[out] pdwAttributes

Указатель на DWORD , указывающий атрибуты, определенные в методе IWMDMStorage::GetAttributes .

[out] pFormat

Указатель на структуру _WAVEFORMATEX , указывающую формат звука для файлов с атрибутами звуковых данных.

Возвращаемое значение

Приложение должно вернуть одно из следующих значений HRESULT .

Код возврата Описание
S_OK
Операция чтения должна быть продолжена.
WMDM_E_USER_CANCELLED
Операция чтения должна быть отменена без завершения.
E_FAIL
Произошла неуказанное сообщение об ошибке, и операция чтения должна быть отменена без завершения.

Комментарии

При передаче данных на устройство необходимо предоставить атрибуты объекта для оптимальной передачи.

Примеры

Следующий код 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

См. также раздел

Обработка передачи файлов вручную

Интерфейс IWMDMOperation

IWMDMOperation::SetObjectAttributes