' O) F! X. I/ E# Z- X. P topicStr = SysAllocString((WCHAR *) L"system"); 2 k9 y: W4 T1 v$ e) }1 m5 ] VariantInit(&pokeVariant[2]); 7 T7 N0 O* Q3 _; d8 e2 M pokeVariant[2].vt = VT_BSTR;: q4 F% f0 B M5 q$ j
pokeVariant[2].bstrVal = topicStr;7 O' H. g3 {6 P, p) w; j
5 Z: v O$ h" c% O2 b: ~
// Set the DISPPARAMS structure that holds the variant.; ^$ G0 Z' w& J
( F: q9 H" M" w) a6 W3 Y* r) v dp.rgvarg = pokeVariant;8 }8 P4 i" u, |' v7 ? n" s
dp.cArgs = 3;9 ?* Q6 p/ [% _) }6 |
dp.rgdispidNamedArgs = NULL; ' a4 b- ~0 ^5 G dp.cNamedArgs = 0; $ H* y- K8 r8 Y2 l# Z+ h9 Q6 k) l6 u: v, r- ^ `) g7 B
// Call IDispatch::Invoke() . p- k% ]$ Y: |+ K* {9 E: F5 A9 v2 R; L
hr = m_pDisp->Invoke(* }' M) O; C+ ]. j$ U8 V8 ~- m
pokeID, , @( ]: C4 ^. b( W9 h. g IID_NULL, + D, g( t; w# |2 F LOCALE_SYSTEM_DEFAULT,0 ]0 d: j; X/ P/ Q; @+ @ Q) u. q
DISPATCH_METHOD, # E: _2 F; P( T2 m4 u &dp,, y$ [1 F) p) z8 z# B) v
NULL,0 N, o) G# }! Q) W; x1 g [0 O4 \/ J
&ei, 6 ?1 H0 V f( L3 W1 k+ B- R# O &uiErr);( h4 R' t) D6 ]! J9 N9 U4 k. d& ]3 J
/ n9 S8 H7 a% L4 g
SysFreeString(topicStr); $ J Z, m" M) D) d, f( G' n& D8 k SysFreeString(itemStr);0 D+ B/ E" s* n' w
SysFreeString(valueStr); j2 D) j( F2 q$ x; Y/ C# z5 L6 }2 O. H
现在这个程序可以实现将1232这个数据发送到extend,extend有一个对话框弹出并出现1232这个数据,不知道这个对话框为什么会弹出并显示这个数据???$ X9 X# |) |: h$ |+ V; N- j" C1 W
此外我希望将这个数据赋给extend程序里面的一个变量,请问如何实现???? 3 D. E) F/ X7 ?9 }& ?- j A0 v& [5 `* j4 h6 K
6 c+ W4 K7 c A7 k2.这是request的程序 4 F9 T b- S/ ~+ o// Request a value from Extend- m( R H- o( V6 s; ]
/// p" D0 P1 C: j' }' o
// Initialize the variant that will hold the BSTR. Set the variant's : m$ S* [) g$ }2 _// type flag to indicate the fact that this variant holds a BSTR. Place the 2 }8 b Y" L8 s$ ~// BSTR into the variant structure. ' {& ~# ]6 o* e! r: _( b' L3 g; J4 j: m$ T, a l% V, U. T
requestVariant = (VARIANTARG *)malloc(sizeof(VARIANTARG) *2);' ]0 }6 a9 \. S: A/ d7 J3 ]
4 R# T( M/ W$ H9 r$ ?+ ^
itemStr = SysAllocString((WCHAR *) L"global0:#0:0:0:0:0");) M, o1 Q O; U$ A. Z/ _8 U
VariantInit(&requestVariant[0]); " a' Z) d7 ? M requestVariant[0].vt = VT_BSTR;, m2 Q7 X- t5 R/ {
requestVariant[0].bstrVal = itemStr;% A+ Z9 ? z- c2 n, ~5 d3 `# g8 f