Zum Hauptinhalt springen

DrvTerm

Dieses Ereignis wird aufgerufen, wenn der Laufwerkstreiber beendet wird. Hier können Ressourcen, die in der Initialisierung (siehe DrvInit) reserviert wurden, wieder freigegeben werden.

  • Response
  • MessageId
    • _DrvResTerm
    • Id der Antwort
  • ItemHeader
    • _DrvItemHeader
    • Kopf des Datenpakets
  • ProtocolId
    • 0xF3A49E52
    • Id des verwendeten Protokolls
  • ProtocolVersion
    • 0x00040000
    • Version des verwendeten Protokolls
  • ItemResult
  • Result
    • int
    • Ergebniswert

Die Angabe eines Resultats ist optional.

Sind zu diesem Zeitpunkt noch geänderte Dateien geöffnet, kann das temporäre Verzeichnis (siehe DrvInit) nicht entfernt werden, da diese Dateien in dem Verzeichis verbleiben. Die Dateien können zum Wiederherstellen von Informationen genutzt werden.

Beispiel:

if (tDrvRequestMessageId = _DrvReqTerm)
{
tDrvMsxWrite # MsxOpen(_MsxSocket | _MsxWrite, tSck);

tDrvMsxWrite->MsxWrite(_MsxMessage, _DrvResTerm);
tDrvMsxWrite->MsxWrite(_MsxItem, _DrvItemHeader); // ItemHeader
tDrvMsxWrite->MsxWrite(_MsxData, 0xF3A49E52); // ProtocolId
tDrvMsxWrite->MsxWrite(_MsxData, 0x00040000); // ProtocolVersion
...
tDrvMsxWrite->MsxWrite(_MsxEnd, 0);

tDrvMsxWrite->MsxClose();
}