FO_MOVE 작업과 함께 Windows SHFileOperation 기능을 사용하는 코드가 있습니다. 추가 플래그는 FOF_NOCONFIRMATION | FOF_NOERRORUI | FOF_SILENT.SHFileOperation FO_MOVE는 대상 드라이브가 꽉 찬 경우 파일을 삭제합니다.
대상 드라이브가 가득차면 이상한 동작이 관찰되었습니다. 이 경우 MOVE는 대상 폴더에 파일을 배치 할 수 없지만 소스 파일도 손실됩니다. 이것은 예기치 않게 발생했으며 이로 인해 데이터가 손실되었습니다.
SHFileOperation의 표준 동작입니까? 대상 드라이브에 공간이 있으면 MOVE와 같은 것을 사용할 수 있습니까? 그렇지 않으면 원래 위치에 파일을 남겨 둘 수 있습니까?
BTW "CreateFileEx"가 실패 상태를 반환하지만 디렉터리를 삭제하므로 WinAPI 오작동에 놀라지 않습니다. –