How do I open the CD/DVD door with a Windows API call?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
If you're using .NET this will work:
http://www.dotnetspider.com/resources/15834-eject-close-cd-tray.aspx
It was the first link to come up when I googled "win api open cd door".
This was the second one: Windows CDROM Eject.
回答2:
If anyone else is interested, here is a short draft of how it can be done in Lua:
require ("alien")
local kolbasz = alien.winmm.mciSendStringA
kolbasz:types{ ret = 'long', abi = 'stdcall', 'string', 'string', 'long', 'long'}
kolbasz("set cdaudio door open", null, 0, 0)
回答3:
[DllImport("winmm.dll")]
static extern Int32 mciSendString(string command, string buffer, int bufferSize, IntPtr hwndCallback);
//Open
mciSendString("set CDAudio door open", "", 127, IntPtr.Zero);
//Close
mciSendString("set CDAudio door closed", "", 127, IntPtr.Zero);