Open CD/DVD door with a Windows API call?

2019-01-26 19:14发布

问题:

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);


标签: winapi dvd cd