gemisigo
gemisigo

Reputation: 245

Open CD/DVD door with a Windows API call?

How do I open the CD/DVD door with a Windows API call?

Upvotes: 4

Views: 5010

Answers (3)

Sergio Cabral
Sergio Cabral

Reputation: 6966

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

Upvotes: 1

gemisigo
gemisigo

Reputation: 245

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)

Upvotes: 1

David
David

Reputation: 73564

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.

Upvotes: 6

Related Questions