다음을 통해 공유


IMDSPStorage::CreateStorage 메서드(mswmdm.h)

CreateStorage 메서드는 새 스토리지를 만들고 새로 만든 스토리지의 IMDSPStorage 인터페이스에 대한 포인터를 반환합니다. dwAttributes가 WMDM_FILE_ATTR_FILE 않는 한 이 메서드는 선택 사항입니다. 이 경우 이 메서드를 구현해야 하며 WMDM_E_NOTSUPPORTED 또는 E_NOTIMPL 반환해서는 안 됩니다. 자세한 내용은 필수 및 선택적 인터페이스를 참조하세요.

구문

HRESULT CreateStorage(
  [in]  DWORD         dwAttributes,
  [in]  _WAVEFORMATEX *pFormat,
  [in]  LPWSTR        pwszName,
  [out] IMDSPStorage  **ppNewStorage
);

매개 변수

[in] dwAttributes

새 스토리지의 특성을 포함하는 DWORD입니다. 다음 표에서는 사용 가능한 스토리지 특성을 나열합니다.

attribute Description
WMDM_STORAGECONTROL_INSERTBEFORE 새 스토리지 개체가 대상 개체 앞에 만들어집니다.
WMDM_STORAGECONTROL_INSERTAFTER 대상 개체 다음에 새 스토리지 개체가 만들어집니다.
WMDM_STORAGECONTROL_INSERTINTO 새 스토리지 개체가 대상 개체 폴더에 만들어집니다.
WMDM_STORAGECONTROL_OVERWRITE 동일한 이름의 스토리지가 이미 있는 경우 삭제되고 새 스토리지가 만들어집니다.
WMDM_STORAGE_ATTR_FILESYSTEM 이 개체는 최상위 스토리지 매체(예: 스토리지 카드 또는 기타 온보드 스토리지)입니다.
WMDM_STORAGE_ATTR_REMOVABLE 이 스토리지 매체는 이동식입니다.
WMDM_STORAGE_ATTR_CANEDITMETADATA 이 스토리지는 메타데이터를 편집할 수 있습니다.
WMDM_STORAGE_ATTR_FOLDERS 이 스토리지 매체는 폴더 및 파일 계층 구조를 지원합니다.
WMDM_FILE_ATTR_FOLDER 스토리지 매체의 폴더입니다.
WMDM_FILE_ATTR_LINK 여러 파일 간의 연결을 만드는 링크입니다.
WMDM_FILE_ATTR_FILE 스토리지 매체의 파일입니다.
WMDM_FILE_ATTR_AUDIO 이 파일은 오디오 데이터입니다.
WMDM_FILE_ATTR_DATA 이 파일은 오디오가 아닌 데이터입니다.
WMDM_FILE_ATTR_CANPLAY 이 오디오 파일은 디바이스에서 재생할 수 있습니다.
WMDM_FILE_ATTR_CANDELETE 이 파일을 삭제할 수 있습니다.
WMDM_FILE_ATTR_CANMOVE 이 파일 또는 폴더는 스토리지 매체에서 이동할 수 있습니다.
WMDM_FILE_ATTR_CANRENAME 이 파일 또는 폴더의 이름을 바꿀 수 있습니다.
WMDM_FILE_ATTR_CANREAD 이 파일은 호스트 컴퓨터에서 읽을 수 있습니다.
WMDM_FILE_ATTR_MUSIC 이 오디오 파일은 음악입니다.
WMDM_FILE_ATTR_VIDEO 이 파일에는 비디오 데이터가 포함되어 있습니다.
WMDM_FILE_ATTR_HIDDEN 이 파일은 파일 시스템에 숨겨져 있습니다.
WMDM_FILE_ATTR_SYSTEM 시스템 파일입니다.
WMDM_FILE_ATTR_READONLY 읽기 전용 파일입니다.
WMDM_STORAGE_IS_DEFAULT 이 스토리지는 새 미디어를 배치해야 하는 기본 스토리지입니다.
WMDM_STORAGE_CONTAINS_DEFAULT 이 스토리지에는 새 미디어를 배치해야 하는 기본 스토리지가 포함되어 있습니다.

[in] pFormat

개체가 오디오 파일인 경우 개체에 대한 정보를 포함하는 _WAVEFORMATEX 구조체에 대한 포인터입니다.

[in] pwszName

새 스토리지의 이름을 포함하는 와이드 문자 null로 끝나는 문자열에 대한 포인터입니다.

[out] ppNewStorage

새로 만든 스토리지에 대한 IMDSPStorage 인터페이스를 수신하기 위한 IMDSPStorage 포인터에 대한 포인터입니다.

반환 값

이 메서드는 HRESULT를 반환합니다. Windows Media 장치 관리자 모든 인터페이스 메서드는 다음 오류 코드 클래스 중 어느 것을 반환할 수 있습니다.

  • 표준 COM 오류 코드
  • HRESULT 값으로 변환된 Windows 오류 코드
  • Windows Media 장치 관리자 오류 코드
가능한 오류 코드의 광범위한 목록은 오류 코드를 참조하세요.

설명

WMDM_FILE_ATTR_FOLDER 및 WMDM_FILE_ATTR_FILE 특성이 모두 설정되면 폴더 특성이 파일 특성을 재정의하고 새 스토리지가 폴더로 만들어집니다.

WMDM_STORAGECONTROL_INSERTBEFORE, WMDM_STORAGECONTROL_INSERTAFTER 및 WMDM_STORAGECONTROL_INSERTINTO 중 하나만 클라이언트에서 지정할 수 있습니다.

새 스토리지는 동일한 수준에서 만들거나 현재 스토리지가 폴더인 경우 현재 스토리지에 삽입할 수 있습니다. dwAttributes 매개 변수 값에 의해 제어됩니다. WMDM_STORAGECONTROL_INSERTBEFORE 또는 WMDM_STORAGECONTROL_INSERTAFTER 지정하는 경우 새 스토리지는 현재 스토리지와 동일한 수준에서 만들어집니다. WMDM_STORAGECONTROL_INSERTINTO 지정하면 새 스토리지가 현재 스토리지에 삽입됩니다.

WMDM_STORAGECONTROL_INSERTBEFORE 및 WMDM_STORAGECONTROL_INSERAFTER 파일 시스템의 콘텐츠 순서를 의미합니다. 파일 시스템에서 정렬(예: FAT32)을 지원하지 않는 경우 두 플래그는 현재 스토리지의 동일한 수준에서 새 스토리지를 삽입하는 것과 동일한 효과를 줍니다. 현재 스토리지가 스토리지 매체의 루트를 나타내고 이러한 두 플래그 중 하나가 지정되면 작업이 실패합니다.

WMDM_STORAGECONTROL_INSERTINTO 현재 스토리지가 폴더인 경우에만 유효합니다. 현재 스토리지가 파일이고 이 플래그를 지정하면 작업이 실패합니다.

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 mswmdm.h
라이브러리 Mssachlp.lib

추가 정보

IMDSPStorage 인터페이스

IMDSPStorage2::CreateStorage2

_WAVEFORMATEX