|
在MS提供的acpimof.mof文件里定义了两个class,分别如下:7 R/ T0 S0 M) v) E k
& `3 _. _2 ]3 G3 u; ^$ }class Package
! I( n- r/ f y5 L0 C; J{
# f! b" S. ?. j' G# O4 J [WmiDataId(1),' p6 N1 D& M$ ?4 @& d% V5 Q
read, write,
3 k6 `0 M1 _! i$ |! c9 F Description("16 bytes of data")5 Q+ ^3 X4 c6 O
] uint8 Bytes[16];( c! D5 Z, d: w8 g% X
};5 S1 t. X) O: y6 |5 p% B. \
& ?7 p2 G/ ^8 p
[WMI,# \$ Y' R. H) L9 p$ M2 S6 n/ M
Dynamic,
# S: U; J! d% b. C4 p Provider("WmiProv"),. P& [# x, k- n0 I$ ?1 ^3 w+ ~+ [
Locale("MS\\0x409"),
3 _/ }3 j2 q1 r( l8 R r( D Description("Class to test Query/Set a package"),% u: b! P, }* b+ ~" B( Z
guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}")
! [- c4 p0 ~2 p% f]4 E3 O* o5 s1 v9 o2 t9 f" w2 A' U
class AcpiTest_QSPackage
5 B2 _% Y) k) i: x% t{5 C; S4 E: B$ {" I
[key, read]
! s8 c: b, C- O2 A string InstanceName;( r: N# Y! @+ h1 V
[read] boolean Active;: P, Q) u+ n' k2 G! I
8 |3 Y: k" m ?! P( p) U
[WmiDataId(1),6 A% f$ a4 b) a8 h
read, write,) H- _* g; B( u; D- e% y+ i. L
Description("description")
- V; g( S; h. L. k& e8 w% Q ] Package Data;
! g$ a, p* b/ L/ L2 g9 k
0 g6 O" y4 K* b};
, q; G# a% j$ y; j" A, W! P5 ?8 A, L
2 i4 l j7 l* z请教各位大侠,如果我想得到 packge 类型的Data 是不是用:
$ f) H0 d+ ?: Y F; S
- e6 c& d; T& i9 fhres = pSvc->ExecQuery(' V% ~+ o1 E9 ^- S2 V
bstr_t("WQL"),
( O {! j* v* A bstr_t("SELECT * FROM AcpiTest_QSPackage"),1 S( l. \7 m/ I1 R+ q% c' L
WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY,
' L* H& ?# t8 q NULL,
2 T( i* s" Z. m9 e J &pEnumerator);: a; n# g* @- S- C" I6 l
/ l8 h' s& ]8 }3 s2 Y2 K% e# kHRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1,
# h- l: s5 e( u) H- t V &pclsObj, &uReturn);/ w [+ D8 ^( g3 A( _7 W6 k7 w3 w
k& w( Q6 H9 v1 J+ f) F6 P
hr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);
* ~1 w& z. f7 z) S如果是的话,我下一步要怎么操作vtProp?2 M/ Q( R2 `6 C5 F& f7 U
单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了! |
|