1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| void lockcd(){
m_hCD = CreateFile ("\\\\.\\E:", GENERIC_READ,
FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL,NULL);
PREVENT_MEDIA_REMOVAL pmrLockCDROM;
pmrLockCDROM.PreventMediaRemoval = TRUE;
DWORD dwNotUsed;
DeviceIoControl (m_hCD, IOCTL_STORAGE_MEDIA_REMOVAL,
&pmrLockCDROM, sizeof(pmrLockCDROM), NULL,
0, &dwNotUsed, NULL);
return TRUE;
}
void Unlock(){
if (INVALID_HANDLE_VALUE == m_hCD) return FALSE;
PREVENT_MEDIA_REMOVAL pmrLockCDROM;
pmrLockCDROM.PreventMediaRemoval = FALSE;
DWORD dwNotUsed;
DeviceIoControl (m_hCD, IOCTL_STORAGE_MEDIA_REMOVAL,
&pmrLockCDROM, sizeof(pmrLockCDROM), NULL,
0, &dwNotUsed, NULL);
CloseHandle (m_hCD);
return TRUE;
} |
Partager