C# projeleri dahilinde kod yazarak CD sürücüsünü açma veya kapatma gereğini duyduğunuzda Windows'un mciSendString() fonksiyonundan yararlanabilirsiniz. Bu fonksiyon Windows ile gelen “winmm.dll” dosyasında yer almaktadır. Bu fonksiyonun orijinal yapısını ve C#’a uyarlanmış halini aşağıda görebilirsiniz.
MCIERROR mciSendString(
LPCTSTR lpszCommand,
LPTSTR lpszReturnString,
UINT cchReturn,
HANDLE hwndCallback);
[DllImport("winmm.dll")]
public static extern int mciSendString(string lpszCommand,
StringBuilder lpszReturnString,
int cchReturn, IntPtr hwndCallback);
Sürücüyü açmak istiyorsanız mciSendString() fonksiyonunu aşağıdaki gibi kullanabilirsiniz.
IntPtr Ptr;
Ptr = IntPtr.Zero;
mciSendString("Set cdaudio door open", null, 0, Ptr);
CD sürücüyü kapatmak istiyorsanız bu fonksiyonu bu aşağıdaki gibi kullanmalısınız. Ancak bazı CD sürücülerini kod yazarak kapatmak mümkün olmamaktadır.
IntPtr Ptr;
Ptr = IntPtr.Zero;
mciSendString("Set cdaudio door closed", null, 0, Ptr);