( X; P, d/ Y( [ p6 S itemStr = SysAllocString((WCHAR *) L"global0:#0:0:0:0:0"); _, O1 J& ?/ h9 K% P; F
VariantInit(&pokeVariant[1]); 7 V3 m9 z; q' y8 E2 a) T% a
pokeVariant[1].vt = VT_BSTR;: f9 G' M5 ]7 t9 x% [, L. _
pokeVariant[1].bstrVal = itemStr;* W6 ]4 Q2 C& T9 p5 q6 i5 E
; W- }) O1 z' o! w4 `6 I1 Y
topicStr = SysAllocString((WCHAR *) L"system");, `! n2 v9 [ y
VariantInit(&pokeVariant[2]); # z; N$ t- g" A
pokeVariant[2].vt = VT_BSTR;$ w5 ?1 y4 R+ i' M9 v- Z9 p! E
pokeVariant[2].bstrVal = topicStr;/ r8 y; T# I, u9 ^
- s0 x. n7 j1 ~. q( w4 v& I% O
// Set the DISPPARAMS structure that holds the variant. 2 ]" i. @3 L# L$ E : ^7 p7 j1 B$ x9 S! { X; U4 s dp.rgvarg = pokeVariant; q& u0 T! i- L( ?) l3 r
dp.cArgs = 3; 4 k( | q. C, z) r, Z dp.rgdispidNamedArgs = NULL; 2 I' x y2 R' y7 D, \! S% t$ [1 N: a dp.cNamedArgs = 0; ( q/ e1 f1 l7 w! B. y0 a0 Z3 D# `# U v r
// Call IDispatch::Invoke()+ ]( z n4 t$ Q7 s, h) t
% V F/ O5 w) Q- s7 b
hr = m_pDisp->Invoke( ) s! F$ N8 t' o& Z! K+ k+ L0 p pokeID,2 |, t. i* H1 z% i* S' ~
IID_NULL, $ H# m2 c- o! C" F6 }6 z; Q LOCALE_SYSTEM_DEFAULT,) E3 \. i% n* z6 N* ^. S
DISPATCH_METHOD, + A0 ?4 L+ J, o# a' @ &dp,$ f3 l5 ~( K% t7 X
NULL,$ P! |! v8 v+ j6 d8 Z' f
&ei,1 c( T5 z- L' a# U
&uiErr);8 T; c @! Q# v6 H
. [4 _6 N" H$ E# Z SysFreeString(topicStr); ; F3 v, w3 P% e- _ SysFreeString(itemStr); ( G9 x( F, i& L. c. w SysFreeString(valueStr);! l& u% f9 M$ u8 z2 I4 G1 I9 }
" w+ Q0 v: q$ _3 x% f9 U2 m+ y- r4 E现在这个程序可以实现将1232这个数据发送到extend,extend有一个对话框弹出并出现1232这个数据,不知道这个对话框为什么会弹出并显示这个数据???6 i; p1 d7 R/ f% Y/ h7 k G
此外我希望将这个数据赋给extend程序里面的一个变量,请问如何实现???? & l, J( V0 h; s8 E$ a & T1 M' j! B5 P( D0 c3 O: C* t ' j( x0 [$ E y2.这是request的程序( F" l0 G, ^) [: x6 |
// Request a value from Extend 9 v3 Z0 ^8 j% C6 R/ S# U//9 ^( o/ k- K) C+ A
// Initialize the variant that will hold the BSTR. Set the variant's 4 `: v" K6 X5 v( Y4 j, w; z1 i* H// type flag to indicate the fact that this variant holds a BSTR. Place the8 L; L. S, i ^
// BSTR into the variant structure.7 h- ?' U% A% L
: t0 p: m" H0 \% ~* f
requestVariant = (VARIANTARG *)malloc(sizeof(VARIANTARG) *2);4 M ?7 [5 X1 T* ?1 z; z9 a9 |: E