WM_DDE_EXECUTE Nachricht
Eine DDE-Clientanwendung (Dynamic Data Exchange) sendet eine WM_DDE_EXECUTE-Nachricht an eine DDE-Serveranwendung, um eine Zeichenfolge an den Server zu senden, die als Eine Reihe von Befehlen verarbeitet werden soll. Es wird erwartet, dass die Serveranwendung als Antwort eine WM_DDE_ACK Nachricht postiert.
Um diese Nachricht zu posten, rufen Sie die PostMessage-Funktion mit den folgenden Parametern auf.
#define WM_DDE_EXECUTE 0x03E8
Parameter
-
wParam
-
Ein Handle für das Clientfenster, das die Nachricht veröffentlicht.
-
lParam
-
Enthält ein globales Speicherobjekt, das abhängig von den an der Unterhaltung beteiligten Fenstertypen auf eine ANSI- oder Unicode-Befehlszeichenfolge verweist.
Bemerkungen
Die Befehlszeichenfolge ist eine NULL-Zeichenfolge, die aus einer oder mehreren opcode-Zeichenfolgen besteht, die in einzelne Klammern ([ ]) eingeschlossen sind. Jede opcode-Zeichenfolge weist die folgende Syntax auf, wobei die Parameterliste optional ist:
opcode-Parameter
Der Opcode ist ein beliebiges anwendungsdefiniertes einzelnes Token. Sie darf keine Leerzeichen, Kommas, Klammern, Klammern oder Anführungszeichen enthalten.
Die Parameterliste kann alle durch die Anwendung definierten Werte oder Werte enthalten. Mehrere Parameter werden durch Kommas getrennt, und die gesamte Parameterliste wird in Klammern eingeschlossen. Parameter dürfen keine Kommas oder Klammern enthalten, außer innerhalb einer Zeichenfolge in Anführungszeichen. Wenn ein Klammer- oder Klammerzeichen in einer Zeichenfolge in Anführungszeichen angezeigt werden soll, muss es nicht verdoppelt werden, wie dies nach den alten Regeln der Fall war.
Im Folgenden sind gültige Befehlszeichenfolgen aufgeführt:
[connect][download(query1,results.txt)][disconnect]
[query("sales per employee for each district")]
[open("sample.xlm")][run("r1c1")]
[quote_case("This is a "" character")]
[bracket_or_paren_case("()s or []s should be no problem.")]
Beachten Sie, dass nach den alten Regeln Klammern und Klammern wie folgt verdoppelt werden mussten:
[bracket_or_paren_case("(())s or [[]]s should be no problem.")]
Server sollten Befehle in jeder Form analysieren können.
Unicode-Ausführungszeichenfolgen sollten nur verwendet werden, wenn sowohl die Client- als auch die Serverfensterhandles bewirken, dass die IsWindowUnicode-FunktionTRUE zurückgibt.
Entsendung
Die Clientanwendung weist das globale Speicherobjekt zu, indem die GlobalAlloc-Funktion aufgerufen wird.
Beim Verarbeiten der WM_DDE_ACK Nachricht, die der Server als Antwort auf eine WM_DDE_EXECUTE Nachricht sendet, muss die Clientanwendung das von der WM_DDE_ACK Nachricht zurückgegebene Objekt löschen.
Empfangen
Die Serveranwendung sendet die WM_DDE_ACK Nachricht, um positiv oder negativ zu reagieren. Der Server sollte das globale Speicherobjekt wiederverwenden.
Sofern in einem Unterprotokoll nichts anderes angegeben ist, sollte der Server die WM_DDE_ACK Nachricht erst posten, wenn alle aktionen, die in der Ausführungsbefehlszeichenfolge angegeben sind, abgeschlossen sind. Die einzige Ausnahme von dieser Regel ist, wenn die Zeichenfolge bewirkt, dass der Server die Unterhaltung beendet.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) |
Windows 2000 Server [nur Desktop-Apps] |
Header |
|