. P% ?. q' r, T, T& B hr = m_pDisp->Invoke(- L' o$ R* M7 l. H, W
pokeID,8 q6 j9 ^* u; S2 I n( ?; D" j4 M ^
IID_NULL,; @& B1 D" K6 [" c% H" T
LOCALE_SYSTEM_DEFAULT,3 q1 s7 J. b9 T, @8 X& y( W
DISPATCH_METHOD, + @9 k0 b& E0 s! D; Z$ p# r% x &dp, & o, Y: d% Z0 u2 d5 ? NULL, $ h( q0 R E) V& M0 d# i: ~ &ei, 5 F" _3 n& ~; |' ^+ Q &uiErr); / n9 t% w5 P4 ^" v! l+ M + ^/ k0 O0 `2 {% Z SysFreeString(topicStr);. L9 s6 v- T4 D# o5 z2 y
SysFreeString(itemStr);4 U/ P6 b1 n0 T( A. K! O- c
SysFreeString(valueStr); " I3 z; S: N' G3 Y- \( N/ ~8 }3 V6 G( {9 \' b
现在这个程序可以实现将1232这个数据发送到extend,extend有一个对话框弹出并出现1232这个数据,不知道这个对话框为什么会弹出并显示这个数据??? % C& ?6 o" B+ o8 J4 |此外我希望将这个数据赋给extend程序里面的一个变量,请问如何实现????# j a a/ L: C; n: ^
& m. T- ~5 Z" K( `* f/ P; Y, G, ]: c8 Z2 U
2.这是request的程序" G, G' k. ~& B5 T5 S' ~
// Request a value from Extend ; F3 u3 Q4 m9 F//( S+ q* B% Y, O! j% U, d
// Initialize the variant that will hold the BSTR. Set the variant's # R5 h4 J6 r, P// type flag to indicate the fact that this variant holds a BSTR. Place the; o9 Z& H! m) n2 B1 o
// BSTR into the variant structure.3 t4 w4 ^1 I% y' y7 r! P
9 g% N) c' F/ Y' ]# \, e
requestVariant = (VARIANTARG *)malloc(sizeof(VARIANTARG) *2);5 X4 O' ?5 D+ V6 Y3 o7 b& o& _7 T2 s
( v6 J; l! W3 ^0 y itemStr = SysAllocString((WCHAR *) L"global0:#0:0:0:0:0");4 ?% l/ q+ X* K# ^
VariantInit(&requestVariant[0]); # {: u* d% j; ]* B; W* O2 y! ~+ B requestVariant[0].vt = VT_BSTR; / C7 q; ]* ~* Q: R requestVariant[0].bstrVal = itemStr; 7 N. E# H4 Z- Z! v, q & u% _8 ?8 _( ?. Z/ ~/ r) q7 k' m topicStr = SysAllocString((WCHAR *) L"system"); g& \% r5 D/ i% i
VariantInit(&requestVariant[1]); 0 w' K" C @: U requestVariant[1].vt = VT_BSTR; 8 ~' ^1 L; _- y8 H: c requestVariant[1].bstrVal = topicStr;9 N' b' m- F N5 z+ x9 F0 G% H
! Y0 }+ Q4 E1 ]! B( \1 Q9 U! g8 c! @0 m! P
// Set the DISPPARAMS structure that holds the variant.5 B" u0 R" D" I! h
8 g+ R; Q1 @4 y8 F dp2.rgvarg = requestVariant;2 \! E* f- d. k. w7 c# n6 X [
dp2.cArgs = 2; + W _* \" Z/ a! L dp2.rgdispidNamedArgs = NULL; % l- }; g& R/ q. _: N dp2.cNamedArgs = 0;- G4 J, E- n( D! j1 I, s, C2 }
8 x4 D! s; W. u9 X( g$ G9 W- [# T/ | var.vt = VT_EMPTY; 4 U6 l# P5 s# d8 [: g5 I : ?" R# R- k! ^// Call IDispatch::Invoke()1 p' i1 H5 q6 F- M' z
/ y, R, b- ~7 X& }2 s
hr = m_pDisp->Invoke( , Q$ L8 b1 R$ J" ~! l( X requestID, y; L8 v2 M+ \& M5 n M/ v IID_NULL,6 d7 s, T( ~* y; ?0 ^& }
LOCALE_SYSTEM_DEFAULT,( f" k( N6 @. u5 x& m
DISPATCH_METHOD,* H+ E/ U: \- G! r q* Y! b
&dp2, * l: E/ o, J3 G: E4 j5 p Y &var,5 z* C# _1 A; a! J
&ei, ) M @( M/ R5 r: W! p &uiErr); & T, U3 k2 P' t 6 q* @- ]) P. _ T6 F4 q- X3 C SysFreeString(topicStr);+ T" J4 d% f% _+ u3 T
SysFreeString(itemStr); ; g: s7 N% Z- g# S请问该程序是获得extend里面的哪个值? 0 k5 e) U7 \: N( |! f1 X如果我希望获得extend程序里面的某个变量的数值,那个c++程序应该如何实现????