|
|
在MS提供的acpimof.mof文件里定义了两个class,分别如下:
- O" F& p8 i, Q' k8 L- o4 H6 ?/ }0 ?2 Z* i: Z- i& o8 {
class Package$ ]6 g5 P6 y, y% v$ o, Y
{) a: q/ B- n) M/ n4 z
[WmiDataId(1),
1 d0 ~0 x' o# ^: ~8 _4 h8 S: | read, write,
- f- [: i" H4 b# F Description("16 bytes of data")6 L/ {# i# w/ @& C
] uint8 Bytes[16];4 v9 D6 _" A* q* G4 s6 i" |
};. W; ~7 X4 M" p! b; J+ ^' X
! Q% Q/ o9 e' |/ a[WMI,4 Q# g& K/ Y" h) M B0 U
Dynamic, s3 |7 J5 a1 `0 j" [0 w( K
Provider("WmiProv"),
: i/ ?: ]9 P- M- j& w" I Locale("MS\\0x409"),
7 C8 F4 O1 C$ \4 {# k+ z: @ Description("Class to test Query/Set a package"),
2 w) u/ o5 I3 O! |, u- z" b( p guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}")! V) O& [" {; s/ c8 I* m6 K# u) a/ F+ A
]4 a4 D& n' l( z& D/ ~* n
class AcpiTest_QSPackage$ a4 ~, W9 j6 @0 w* l8 I! X/ J
{
0 d( `6 D. T: J; m6 Z# m [key, read]% _ S: t5 M: T
string InstanceName;% p% L* Y! W4 o9 M
[read] boolean Active;
, }) w0 s# R% O0 e
2 Q# }$ R. Z8 d' A [WmiDataId(1),
5 w" E0 _- \1 ?. s read, write,1 _7 B5 f, x+ ~- { G3 {8 v' h3 }9 Q
Description("description")
3 a G& I' Q! D2 e ] Package Data;3 O, c. n0 u2 |, Q6 f* h9 g
6 `% b4 N% j- c6 c$ Q( y$ |# a
};! @3 _6 ~! y+ t
$ F1 s7 G. M( z请教各位大侠,如果我想得到 packge 类型的Data 是不是用:
! Y. q7 r0 Y6 r
& j& g( D3 J+ Y+ M& Q$ Chres = pSvc->ExecQuery(
/ k% n2 `+ z: d0 ?* N( Y r3 ]0 A6 a bstr_t("WQL"), 6 Y- h# h k4 f1 m, y
bstr_t("SELECT * FROM AcpiTest_QSPackage"),* @' y( e0 i% ?( b2 Y
WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY,
) G/ a1 \0 V0 L, y$ ~" m3 v* F NULL,8 }! [4 ?* L v4 l+ Q3 D1 U
&pEnumerator);
E! {0 X( |8 F/ H( s% Q
7 m4 U5 v: B qHRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1, * D8 m. n3 k# t& W& L7 a
&pclsObj, &uReturn);
: x: }: O( L+ A/ U2 C0 m4 O0 |
6 o3 G2 E/ A0 V u4 a) Y; H% r2 @hr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);
' U) e2 N" t# K7 M* p如果是的话,我下一步要怎么操作vtProp?
# R) W; ]9 v! k+ s单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了! |
|