|
|
在MS提供的acpimof.mof文件里定义了两个class,分别如下:% [- m7 Y' y% p% i; j1 d- S, {/ |
, ]# |7 s+ U3 wclass Package2 o3 r3 J3 e: s( S# s1 [
{
$ Q5 Q# ^& j# S2 T7 o! L [WmiDataId(1),
/ U( k m" L8 ~% i read, write,
+ Z4 R7 d2 l# I5 z& Q* }6 }; |! J Description("16 bytes of data")
- D1 W. A; Q7 `, P; L ] uint8 Bytes[16];
e$ d0 ^4 N) ^$ o2 a" ^};% x8 {, l* K# e9 y0 K7 G; P
" s. x! C, W3 z, Y7 ?[WMI,9 m c/ u0 `2 w K4 d
Dynamic,) R1 A" Z. N Q/ c
Provider("WmiProv"),' C$ x; l# p! ]; n# k y
Locale("MS\\0x409"),
* C1 q7 I- I5 t Description("Class to test Query/Set a package"),
* B1 K8 k( d$ D! u8 A8 ?' Y guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}")5 M+ F6 E" t) w- W+ m
]3 ^, s" H6 X3 \0 Z; G
class AcpiTest_QSPackage
, ?" ]1 b9 C" k4 i{
- X* [& {. b% r! t [key, read]. U: e& V2 I9 W: a
string InstanceName;
5 p8 k% p) w$ X, W! {( z5 s [read] boolean Active;
: l( F. j2 d- k, A. s( X% X6 Z* n0 t1 V! m
[WmiDataId(1),3 N% g" D/ g- b$ J1 f7 r
read, write,
. H( e: N5 g6 s( P6 S4 ^/ [% w Description("description")% s, l U2 J) M" I0 r! d" G! N
] Package Data;6 I# \# T. G0 H5 Z6 u
4 m" P) y& s ~" G% k+ Y2 _2 y};% J, _/ \4 m9 g6 e! r9 J8 T
9 c9 {% D- K# a6 `& `5 m0 P
请教各位大侠,如果我想得到 packge 类型的Data 是不是用:. R1 h8 R( T+ C- H5 G; @
) \% f( z- h' n- o, l" Ghres = pSvc->ExecQuery(
0 n$ Y4 `' G: j2 L: ] bstr_t("WQL"), 1 T; |3 O& c p
bstr_t("SELECT * FROM AcpiTest_QSPackage"),
/ j6 i9 k* h1 S: j J1 k WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, . R# }3 E* }& q; H- J5 A- Z* ?- E
NULL,( @7 m& F6 G( b0 N
&pEnumerator);
7 ^ M* {* [ |- x- {3 \: t' w0 c6 l) e8 J) O6 c
HRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1,
$ }8 H; D/ h2 ?( m- c; C &pclsObj, &uReturn);' ^, `, ?6 r: f( c9 \
% Z w/ c/ e; G" n7 q
hr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);
5 W6 v7 x" q [" \如果是的话,我下一步要怎么操作vtProp?
8 ~9 {( S0 R& k! r, e单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了! |
|