|
|
在MS提供的acpimof.mof文件里定义了两个class,分别如下:. b3 D' `6 S8 }, {, F* X$ l7 f
( P& z9 S5 ^5 I0 {class Package
0 a, q# y: @ s' y% r$ ^; C0 e$ t) a{; y6 P: }( T, ]' y( }* J
[WmiDataId(1),, e" E) v0 T# q9 t& l8 {5 W$ @
read, write,0 f5 A. w% O: [7 P" N1 p4 ^
Description("16 bytes of data")
5 \: x* D8 u9 W0 h' A ] uint8 Bytes[16];
9 J8 s3 k2 W8 H9 v: K};9 k4 k. i6 H! Y2 @
7 A8 x- r5 c; W4 U0 A' W
[WMI,
7 `" N! y( ]2 r+ @$ H1 G$ v( q& m Dynamic,7 T& B n V" a; G6 \/ J# j
Provider("WmiProv"),
. ^* K' v4 l) j Locale("MS\\0x409"),& |% s0 _4 X/ T5 Y
Description("Class to test Query/Set a package"),
/ v( b$ A- A# h" p2 I7 E& `, ^5 D guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}")
h$ C+ K& ?0 }$ N]5 a) W' r9 S+ b6 @) M9 n
class AcpiTest_QSPackage# K. Y1 D! z5 ^$ \+ j
{
5 S& R% L s, t! A) A3 p. @ [key, read]4 k |0 F- G0 ?/ ^% D! L- L+ C7 e
string InstanceName;
6 F2 @1 E. {" M [read] boolean Active;5 o" P% D; F. e- R0 ?- e
# O0 w, I' L) h7 S/ U1 s) G
[WmiDataId(1),% T% j; }6 J% }2 S; _
read, write,& b! M, ^, t! @7 Q9 X
Description("description")
( J! G& v+ {, }7 H+ W ] Package Data;: y% G& e! f4 C& V7 P, K0 D1 o# I
^: f C; F( U. i};) {- ~* R7 ?- |
- v) B; m* ~+ m* o; d( o* a请教各位大侠,如果我想得到 packge 类型的Data 是不是用:
/ ?4 V, { E" A+ F4 i; y3 a1 [- d& h' E: o; [) m2 D
hres = pSvc->ExecQuery(
3 l7 [1 `% M! r% {# Z; W8 j$ ^ bstr_t("WQL"),
6 t! k& p3 p ~: U9 G2 s( Z: y bstr_t("SELECT * FROM AcpiTest_QSPackage"),* r6 {0 d" c3 [4 H' b
WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, , s7 C* T: Y1 J$ \
NULL,
. o3 B6 b2 D* y$ N/ v1 r &pEnumerator);
6 ]1 B8 s8 b' N f. j
& I' K( d. a HHRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1,
: o) g$ a7 N& A: j5 [ &pclsObj, &uReturn);" S) w" D9 N4 ?/ G# ^' a9 ?4 B
/ }) W5 X7 t- m" X: q& ?
hr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);; p8 _8 d! a3 ^3 f* ~' H
如果是的话,我下一步要怎么操作vtProp?
. D- k8 P; | o0 h4 K- b/ w4 S单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了! |
|