共用方式為


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
標頭 mswmdm.h
程式庫 Mssachlp.lib

另請參閱

手動處理檔案傳輸

IWMDMOperation 介面

IWMDMOperation::SetObjectAttributes