|
|
在MS提供的acpimof.mof文件里定义了两个class,分别如下:
" Y$ F$ k) z3 v% c+ ]& w0 d8 A" t# X* M
class Package! M$ _& V P1 i" F7 S
{
7 Q; M) N" o1 D- ? [WmiDataId(1),) n R# j9 Q2 h7 e3 g
read, write,
9 o6 Y. a2 b; ]; l0 V# h+ q Description("16 bytes of data")
' Q; h0 h8 v, k ] uint8 Bytes[16];! z* X) G1 _/ c9 ~! v8 o
};, [/ G: Q, O' C2 ?( K& ?
! F2 S; X: \, l6 P6 u( y) ~, I0 y[WMI,
! L. B$ q- e! s Dynamic,
- q* N7 G& Z# w! V5 S Provider("WmiProv"),
3 A+ m, F2 N1 b$ S/ \! y Locale("MS\\0x409"), P9 d6 _) b* o9 r7 T8 ]+ y
Description("Class to test Query/Set a package"),7 v" J, Z4 B! A% ~
guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}"). R' P/ F$ T1 J
]
. U8 \* Q! ^6 {+ R- O& _class AcpiTest_QSPackage: F, Y j) k+ ?* a
{
+ ~3 e0 B$ q& t! s8 _' J [key, read]6 ]0 f7 a3 m. g) S( i7 G0 h0 M& [
string InstanceName;; X& k7 K* p- T ?' j
[read] boolean Active;
# g) z0 O5 h: G5 v% y& t% p" ~# D( `
[WmiDataId(1),% R* t( ] n9 q1 ^; a" Q
read, write,# ^$ x- o( F7 a; s2 w
Description("description")
) y9 I2 V1 k2 _, I: A S2 A ] Package Data;
$ `7 J* a% B! r% y# }8 {" P0 p8 Y
5 C6 _/ I3 O) y- Z};$ s Q* w# ~% r* M: \+ O
: o* T3 M; \ s! I$ J请教各位大侠,如果我想得到 packge 类型的Data 是不是用:
: `7 Q4 H$ p6 ^3 t% l
" x/ v" B% Q% Y3 V! H7 jhres = pSvc->ExecQuery(* a2 X: R6 ^7 s8 M
bstr_t("WQL"),
% U3 W: i7 v* j8 q0 i bstr_t("SELECT * FROM AcpiTest_QSPackage"),8 d, G/ }# y4 Y8 ^! Z4 S t, L
WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY,
: J& s3 z8 p1 B7 i/ B6 U/ ? NULL,2 k, N7 j2 Y8 c3 a+ @* w
&pEnumerator);
: t5 @9 ?& F: V& R
% p; g1 A8 m% E: U# G- I. uHRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1, " F. s" V' h* J y8 ~6 n R
&pclsObj, &uReturn);: c1 O6 A0 W2 B( c. U& R+ }# r+ B1 d
`) N! Y. T% q7 W
hr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);) _: C N0 l) i8 i5 d- M
如果是的话,我下一步要怎么操作vtProp?7 B- F4 }4 c' Q8 g0 }4 s
单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了! |
|