如何禁止光驱弹出
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如何禁止光驱弹出
光驱只要是正常的,按下光驱按钮都能弹出,除非光驱坏了才会不弹出。
如果要禁止系统弹出光驱,一个方法是在设备管理器里把驱动禁用,要使用的时候再启用
如何禁用光驱弹出?
问题补充:
如何禁止光驱"弹出"?
让光驱可以正常读取,但不能弹出
其他回答共2条
2009-11-7 20:34 1131438680|一级
点击关闭光驱就可以了
2009-11-8 03:47 b877025685|二级
把DVD从硬件里禁止或是删掉。
我的电脑-属性-硬件-设备管理器-找到光驱-停用.
1、我想禁止光驱的弹出,无论是按弹出按纽还是别的程序发出弹出命令,光驱门都不会打
开,但是光驱的读写功能不变。
2、如果要用全局钩子,该钩什么类型的消息呢?
调用的动态连接库吧,
能否知道动态连接库的控制光驱的函数,然后重载它
先使用CreateFile()获得光驱的HANDLE
然后HOOK函数DeviceIoControl(),只要是第一个参数为该HANDLE的都拒绝执行
谢谢两位。昨天晚上19:57分时已经找到方法。jiangfb(干是一种美德) 的方法与我的实现方法相同,我已经验证,可行。代码如下:
......
HANDLE hODD;
hODD = CreateFile( "\\\\.\\Cdrom0 ", // drive to open
GENERIC_READ, // no access to the drive
FILE_SHARE_READ | // share mode
FILE_SHARE_WRITE,
NULL, // def ault security attributes
OPEN_EXISTING, // disposit ion
0, // file attributes
NULL);
if(hODD==INV ALID_HANDLE_V ALUE)
{
::AfxMessageBox( "Create Handle Failed! ");
}
PREVENT_MEDIA_REMOV AL *lpInBuffer= new (PREVENT_MEDIA_REMOV AL); lpInBuffer-> PreventMediaRemoval=TRUE;
DWORD nInBufferSize=sizeof(PREVENT_MEDIA_REMOV AL);
DWORD dwBytesReturned;
BOOL bResult;
bResult = DeviceIoControl(hODD, // device to be queried
IOCTL_STORAGE_MEDIA_REMOVAL, // op eration to perform
(LPVOID) lpInBuffer,
nInBufferSize,
NULL, 0,
&dwBytesReturned,
(LPOVERLAPPED) NULL); // sy
nchronous I/O
if(!bResult)
.......
其余的可以参考bhwin98文章和MSDN。
谢谢两位帮忙!
光驱强制弹出孔在哪里
2011-8-19 18:09
用不用打开机箱盖
最佳答案
2011-8-19 18:10
热心网友
得口再说;若是你一点出仓,它只闪几下而不出来,往下看:
你看下光驱的前面板那,可以找到一个小孔(不是耳机孔哦),它的名字叫做“强制弹出孔”,顾名思义,就是强制性让光驱弹出的孔;找根会型针,拉直一端,垂直插进去,稍微一用力,这个时候你会感觉到针进去了一点,其实它里边的真实情况是传动齿轮走了一下,OK```光驱托盘就出来了`~~
顺便说下,这种情况若是频繁出现,不好意思,可以宣布你的光驱有问题了,里边控制弹出的那根小皮带老化了,找维修的地方换一个新的`搞定
另外推荐一个视频学习网站“初学者之路”,老师讲得超级好,欢迎大家百度一下~