midiOutOpen-Funktion (mmeapi.h)
Die midiOutOpen-Funktion öffnet ein MIDI-Ausgabegerät für die Wiedergabe.
Syntax
MMRESULT midiOutOpen(
LPHMIDIOUT phmo,
UINT uDeviceID,
DWORD_PTR dwCallback,
DWORD_PTR dwInstance,
DWORD fdwOpen
);
Parameter
phmo
Zeiger auf ein HMIDIOUT-Handle . Diese Position wird mit einem Handle gefüllt, der das geöffnete MIDI-Ausgabegerät identifiziert. Das Handle wird verwendet, um das Gerät bei Aufrufen anderer MIDI-Ausgabefunktionen zu identifizieren.
uDeviceID
Bezeichner des zu öffnenden MIDI-Ausgabegeräts.
dwCallback
Zeiger auf eine Rückruffunktion, ein Ereignishandle, einen Threadbezeichner oder ein Handle eines Fensters oder Threads, das während der MIDI-Wiedergabe aufgerufen wird, um Meldungen im Zusammenhang mit dem Fortschritt der Wiedergabe zu verarbeiten. Wenn kein Rückruf gewünscht ist, geben Sie null für diesen Parameter an. Weitere Informationen zur Rückruffunktion finden Sie unter MidiOutProc.
dwInstance
Der Benutzer instance Daten, die an den Rückruf übergeben werden. Dieser Parameter wird nicht für Fensterrückrufe oder Threads verwendet.
fdwOpen
Rückrufflag zum Öffnen des Geräts. Dies können die folgenden Werte sein.
Wert | Bedeutung |
---|---|
CALLBACK_EVENT | Der dwCallback-Parameter ist ein Ereignishandle. Dieser Rückrufmechanismus ist nur für die Ausgabe vorgesehen. |
CALLBACK_FUNCTION | Der dwCallback-Parameter ist eine Rückruffunktionsadresse. |
CALLBACK_NULL | Es gibt keinen Rückrufmechanismus. Dieser Wert ist die Standardeinstellung. |
CALLBACK_THREAD | Der dwCallback-Parameter ist ein Threadbezeichner. |
CALLBACK_WINDOW | Der dwCallback-Parameter ist ein Fensterhandle. |
Rückgabewert
Gibt MMSYSERR_NOERROR zurück, wenn erfolgreich oder andernfalls ein Fehler aufgetreten ist. Mögliche Fehlerwerte sind:
Rückgabecode | Beschreibung |
---|---|
|
Es wurde kein MIDI-Port gefunden. Dieser Fehler tritt nur auf, wenn der Mapper geöffnet wird. |
|
Die angegebene Ressource ist bereits zugeordnet. |
|
Der angegebene Gerätebezeichner liegt außerhalb des Bereichs. |
|
Der angegebene Zeiger oder die angegebene Struktur ist ungültig. |
|
Das System kann Arbeitsspeicher nicht zuordnen oder sperren. |
Hinweise
Um die Anzahl der im System vorhandenen MIDI-Ausgabegeräte zu ermitteln, verwenden Sie die Funktion midiOutGetNumDevs . Der durch wDeviceID angegebene Gerätebezeichner variiert von null bis 1 kleiner als die Anzahl der vorhandenen Geräte. MIDI_MAPPER kann auch als Gerätebezeichner verwendet werden.
Wenn ein Fenster oder Thread für den Empfang von Rückrufinformationen ausgewählt wird, werden die folgenden Meldungen an die Fensterprozedur oder den Thread gesendet, um den Fortschritt der MIDI-Ausgabe anzugeben: MM_MOM_OPEN, MM_MOM_CLOSE und MM_MOM_DONE.
Wenn eine Funktion zum Empfangen von Rückrufinformationen ausgewählt wird, werden die folgenden Meldungen an die Funktion gesendet, um den Fortschritt der MIDI-Ausgabe anzuzeigen: MOM_OPEN, MOM_CLOSE und MOM_DONE.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | mmeapi.h (Einschließen von Windows.h) |
Bibliothek | Winmm.lib |
DLL | Winmm.dll |