Condividi tramite


WM_DDE_EXECUTE messaggio

Un'applicazione client DDE (Dynamic Data Exchange) pubblica un messaggio WM_DDE_EXECUTE a un'applicazione server DDE per inviare una stringa al server da elaborare come una serie di comandi. L'applicazione server deve pubblicare un messaggio di WM_DDE_ACK in risposta.

Per pubblicare questo messaggio, chiamare la funzione PostMessage con i parametri seguenti.

#define WM_DDE_EXECUTE     0x03E8

Parametri

wParam

Handle per la finestra client che pubblica il messaggio.

lParam

Contiene un oggetto memoria globale che fa riferimento a una stringa di comando ANSI o Unicode, a seconda dei tipi di finestre coinvolte nella conversazione.

Commenti

La stringa di comando è una stringa con terminazione null costituita da una o più stringhe opcode racchiuse tra parentesi quadre singole ([ ]). Ogni stringa opcode ha la sintassi seguente, in cui l'elenco dei parametri è facoltativo:

parametri opcode

Il codice opcode è qualsiasi token singolo definito dall'applicazione. Non può includere spazi, virgole, parentesi, parentesi o virgolette.

L'elenco dei parametri può contenere qualsiasi valore o valori definiti dall'applicazione. Più parametri sono separati da virgole e l'intero elenco di parametri è racchiuso tra parentesi. I parametri non possono includere virgole o parentesi tranne all'interno di una stringa con virgole. Se un carattere parentesi o parentesi deve essere visualizzato in una stringa con virgolette, non deve essere raddoppiato, come accade nelle regole precedenti.

Di seguito sono riportate stringhe di comando valide:

[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.")] 

Si noti che, sotto le regole precedenti, le parentesi e le parentesi devono essere raddoppiate, come segue:

[bracket_or_paren_case("(())s or [[]]s should be no problem.")] 

I server devono essere in grado di analizzare i comandi in entrambi i moduli.

Le stringhe di esecuzione Unicode devono essere usate solo quando gli handle delle finestre client e del server causano la restituzione della funzione IsWindowUnicode.

Distacco

L'applicazione client alloca l'oggetto memoria globale chiamando la funzione GlobalAlloc .

Quando si elabora il messaggio di WM_DDE_ACK che il server esegue una risposta a un messaggio di WM_DDE_EXECUTE , l'applicazione client deve eliminare l'oggetto restituito dal messaggio WM_DDE_ACK .

Ricezione

L'applicazione server pubblica il messaggio di WM_DDE_ACK per rispondere positivamente o negativamente. Il server deve riutilizzare l'oggetto memoria globale.

A meno che non sia specificato diversamente da un protocollo secondario, il server non deve pubblicare il messaggio di WM_DDE_ACK fino a quando non vengono completate tutte le azioni specificate dalla stringa di comando di esecuzione. L'eccezione a questa regola è quando la stringa causa l'interruzione della conversazione da parte del server.

Requisiti

Requisito Valore
Client minimo supportato
Windows 2000 Professional [solo app desktop]
Server minimo supportato
Windows 2000 Server [solo app desktop]
Intestazione
Dde.h (include Windows.h)

Vedi anche

Riferimento

IsWindowUnicode

PackDDElParam

PostMessage

RiutilizzoDDElParam

SendMessage

DecomprimereDElParam

WM_DDE_ACK

Informazioni concettuali

Informazioni su Dynamic Data Exchange