IVdsDiskPartitionMF::FormatPartitionEx 메서드(vds.h)
[Windows 8 및 Windows Server 2012 가상 디스크 서비스 COM 인터페이스는 Windows Storage 관리 API로 대체됩니다.]
기존 OEM, ESP 또는 알 수 없는 파티션의 형식을 지정합니다.
구문
HRESULT FormatPartitionEx(
[in] ULONGLONG ullOffset,
[in] LPWSTR pwszFileSystemTypeName,
[in] USHORT usFileSystemRevision,
[in] ULONG ulDesiredUnitAllocationSize,
[in] LPWSTR pwszLabel,
[in] BOOL bForce,
[in] BOOL bQuickFormat,
[in] BOOL bEnableCompression,
[out] IVdsAsync **ppAsync
);
매개 변수
[in] ullOffset
디스크의 시작 부분에서 파티션의 바이트 오프셋입니다. 이 오프셋은 파티션 시작의 오프셋이어야 합니다.
[in] pwszFileSystemTypeName
파티션의 서식을 지정할 파일 시스템의 이름을 포함하는 NULL로 종료된 유니코드 문자열입니다. NULL 또는 다음 중 하나여야 합니다. "NTFS", "FAT","FAT32", "UDF" 또는 "EXFAT". 이 매개 변수가 NULL이면 기본값이 사용됩니다.
[in] usFileSystemRevision
파일 시스템의 수정 버전(있는 경우)입니다. 이 멤버는 16비트 이진 코드 10진수로 표현됩니다. 여기서 소수점은 두 번째 숫자와 세 번째 숫자 사이에 암시됩니다. 예를 들어 0x0250 값은 수정 버전 2.50을 나타냅니다.
[in] ulDesiredUnitAllocationSize
파일 시스템의 할당 단위 크기(바이트)입니다. 값은 2의 힘이어야 합니다. 값이 0이면 파일 시스템 형식에 따라 결정되는 기본 할당 단위가 사용됩니다. 할당 단위 범위는 파일 시스템에 따라 달라집니다.
[in] pwszLabel
볼륨에 대한 새 파일 시스템에 할당할 Null로 종료된 유니코드 문자열입니다. 최대 레이블 크기는 파일 시스템에 따라 다릅니다.
[in] bForce
파티션이 사용 중인지 여부에 관계없이 파일 시스템 형식이 강제로 적용되는지 여부를 결정하는 부울입니다.
[in] bQuickFormat
파일 시스템 볼륨의 서식이 빠른지 여부를 결정하는 부울입니다. 빠른 형식은 볼륨의 각 섹터를 확인하지 않습니다.
[in] bEnableCompression
압축을 사용하도록 설정된 파일 시스템을 만들지 여부를 결정하는 부울입니다.
[out] ppAsync
성공적으로 완료되면 IVdsAsync 인터페이스를 수신하여 이 작업을 모니터링하고 제어하는 IVdsAsync 인터페이스에 대한 포인터입니다. 호출자는 수신된 인터페이스를 완료할 때 해제해야 합니다.
반환 값
이 메서드는 E_INVALIDARG 또는 E_OUTOFMEMORY 같은 표준 HRESULT 값과 VDS별 반환 값을 반환할 수 있습니다. HRESULT_FROM_WIN32 매크로를 사용하여 변환된 시스템 오류 코드를 반환할 수도 있습니다. 오류는 VDS 자체 또는 사용 중인 기본 VDS 공급자 에서 발생할 수 있습니다. 가능한 반환 값은 다음과 같습니다.
반환 코드/값 | Description |
---|---|
|
볼륨이 성공적으로 분할되었습니다. |
|
공급자가 잘못된 데이터를 반환했습니다. |
|
이동식 미디어에서는 작업이 지원되지 않습니다. |
|
기본 파일 시스템을 확인할 수 없습니다. |
|
디스크가 없습니다. |
|
파티션이 없습니다. |
|
OEM이 아닌 파티션에서는 작업이 지원되지 않습니다. |
또한 IVdsAsync 인터페이스는 다음과 같은 관련 경고 및 오류 코드를 반환할 수 있습니다.
반환 코드/값 | 설명 |
---|---|
|
파일 시스템의 형식은 지정되었지만 압축되지는 않았습니다. |
|
액세스가 거부되었습니다. |
|
레이블이 잘못되었습니다. |
|
볼륨을 빠르게 포맷할 수 없습니다. |
|
클러스터 수가 너무 커서 32비트 정수로 나타낼 수 없습니다. |
|
클러스터 크기가 너무 커서 서식을 지정할 수 없습니다. |
|
클러스터 크기가 너무 작아서 서식을 지정할 수 없습니다. |
|
파일 시스템은 호환되지 않습니다. |
|
미디어가 호환되지 않습니다. |
|
형식 중에 I/O 오류가 발생했습니다. |
|
미디어는 쓰기로 보호됩니다. |
|
볼륨 크기가 너무 커서 서식을 지정할 수 없습니다. |
|
볼륨 크기가 너무 작아 서식을 지정할 수 없습니다. |
설명
이 메서드는 OEM, ESP 및 알 수 없는 파티션만 서식을 지정합니다. 다른 파티션의 경우 대신 IVdsVolumeMF::Format 또는 IVdsVolumeMF2::FormatEx 메서드를 사용하여 해당 볼륨의 서식을 지정해야 합니다. OEM, ESP 및 알 수 없는 파티션은 볼륨으로 노출되지 않으므로 Format 또는 FormatEx로 형식을 지정할 수 없습니다.
이 메서드는 이동식 미디어의 서식을 지정하는 데 사용할 수 없습니다.
OEM 파티션의 형식이 FAT 또는 FAT32인 경우 파티션 형식은 변경되지 않습니다. NTFS로 포맷된 경우 파티션 형식이 PARTITION_IFS(0x07)로 변경됩니다. 파티션 형식에 대한 자세한 내용은 CREATE_PARTITION_PARAMETERS 참조하세요.
최소 및 최대 할당 단위 크기(클러스터 크기라고도 함)와 같은 파일 시스템 제한에 대한 자세한 내용은 NTFS 기술 참조 및 FAT 기술 참조를 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | vds.h |
라이브러리 | Uuid.lib |