有时候不想让别人使用你的光驱,可将光驱锁定,在按下光驱面板的弹出按健时光驱不能弹出。有Win2000以上的系统中可用以下方法实现:
BOOL LockCDROM(CString strDriver, BOOL bLock)
{
HANDLE hDevice;
BOOL bSucc=FALSE;
CString strDriverPath;
PREVENT_MEDIA_REMOVAL PMR;
DWORD bytesReturned;
strDriverPath = "////.//"+strDriver;
hDevice = CreateFile(strDriverPath,GENERIC_READ, FILE_SHARE_READ||FILE_SHARE_WRITE, 0, OPEN_EXISTING, 0, 0);
if(hDevice==INVALID_HANDLE_VALUE)
{
return FALSE;
}
PMR.PreventMediaRemoval = bLock;
bSucc=DeviceIoControl(hDevice,IOCTL_STORAGE_MEDIA_REMOVAL,&PMR, sizeof(PMR), 0, 0, &bytesReturned, 0);
CloseHandle(hDevice);
return bSucc;
}
//strDriver为要锁定光驱的驱动器字符,bLock为TRUE是锁定,为FALSE是解锁。