MCI und zwei CD LW
-
Hallo !
Wie kann ich zwei CD LW mit MCI ansprechen (nicht gleichzeitig) ?
Normalerweise wird einem ja immer das primäre Laufwerk geliefert.
-
Mit
open "d:" type CDAudio alias nenLaufwerkAlias
das Laufwerk öffnen und dann in weiteren MCI-Calls einfach statt CDAudio den Alias "nenLaufwerkAlias" benutzen
Hier Laufwerk öffnen und schließen von beliebigen CD-LWs:
// test_cdeject.cpp : Defines the entry point for the application. // #include "stdafx.h" #include "mmsystem.h" int cd_open(char *lw); int cd_close(char *lw); int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { cd_open("e"); cd_close("e"); return 0; } int cd_open(char *lw) { char retString[256]; char mciCmd[100]; wsprintf(mciCmd,"open \"%s:\" type CDAudio alias audio_lw shareable",lw); if (mciSendString(mciCmd,retString,sizeof(retString),NULL)!=0) { // Fehler! OutputDebugString("Laufwerk-Alias konnte nicht geöffnet werden!\n"); return 0; } if (mciSendString("Set audio_lw Door Open",retString,sizeof(retString),NULL)!=0) { // Fehler! OutputDebugString("Laufwerk konnte nicht geöffnet werden!\n"); return 0; } if (mciSendString("close audio_lw",retString,sizeof(retString),NULL)!=0) { // Fehler! OutputDebugString("Laufwerk-Alias konnte nicht geschlossen werden!\n"); return 0; } return 1; } int cd_close(char *lw) { char retString[256]; char mciCmd[100]; wsprintf(mciCmd,"open \"%s:\" type CDAudio alias audio_lw shareable",lw); if (mciSendString(mciCmd,retString,sizeof(retString),NULL)!=0) { // Fehler! OutputDebugString("Laufwerk-Alias konnte nicht geöffnet werden!\n"); return 0; } if (mciSendString("Set audio_lw Door Closed",retString,sizeof(retString),NULL)!=0) { // Fehler! OutputDebugString("Laufwerk konnte nicht geöffnet werden!\n"); return 0; } if (mciSendString("close audio_lw",retString,sizeof(retString),NULL)!=0) { // Fehler! OutputDebugString("Laufwerk-Alias konnte nicht geschlossen werden!\n"); return 0; } return 1; }