The GetTapeStatus function indicates whether the tape device is ready to process tape commands.
DWORD GetTapeStatus(
HANDLE hDevice // handle of open device
);
If the tape device is ready to accept appropriate tape-access commands without returning errors, the return value is NO_ERROR.
If the function fails, the return value is one of the following error codes:
Error code | Description |
---|---|
ERROR_BEGINNING_OF_MEDIA | An attempt to access data before the beginning-of-medium marker failed. |
ERROR_BUS_RESET | A reset condition was detected on the bus. |
ERROR_END_OF_MEDIA | The end-of-tape marker was reached during an operation. |
ERROR_FILEMARK_DETECTED | A filemark was reached during an operation. |
ERROR_SETMARK_DETECTED | A setmark was reached during an operation. |
ERROR_NO_DATA_DETECTED | The end-of-data marker was reached during an operation. |
ERROR_PARTITION_FAILURE | The tape could not be partitioned. |
ERROR_INVALID_BLOCK_LENGTH | The block size is incorrect on a new tape in a multivolume partition. |
ERROR_DEVICE_NOT_PARTITIONED | The partition information could not be found when a tape was being loaded. |
ERROR_MEDIA_CHANGED | The tape that was in the drive has been replaced or removed. |
ERROR_NO_MEDIA_IN_DRIVE | There is no media in the drive. |
ERROR_NOT_SUPPORTED | The tape driver does not support a requested function. |
ERROR_UNABLE_TO_LOCK_MEDIA | An attempt to lock the ejection mechanism failed. |
ERROR_UNABLE_TO_UNLOAD_MEDIA | An attempt to unload the tape failed. |
ERROR_WRITE_PROTECT | The media is write protected. |
Windows NT: Requires version 3.1 or later.
Windows: Unsupported.
Windows CE: Unsupported.
Header: Declared in winbase.h.
Import Library: Use kernel32.lib.
Tape Backup Overview, Tape Backup Functions, CreateFile