|
|
在MS提供的acpimof.mof文件里定义了两个class,分别如下:0 |# X& w5 f9 {4 r |
# z8 Y9 m5 T1 `# rclass Package- c) m; W0 l' b1 j0 [! r5 u
{" @$ u$ k% ?+ {& w. d
[WmiDataId(1),
; b6 t' p) {, Z" N: n- U: E2 d read, write,3 Y; |3 c( q6 H' a( k) A
Description("16 bytes of data")+ d E4 J: H5 q3 @5 ], A! l/ u+ c
] uint8 Bytes[16];" x) j5 h; C e0 |0 E8 m. Y
};5 y) @" V6 |( k- D8 i* y
$ E7 U" I4 ^( C, ~4 C
[WMI,/ Z X" Q4 C8 z( n i
Dynamic,
; Z5 W5 ^ B2 k+ [7 Q Provider("WmiProv"),' @" ]. ?" y/ D" C6 B F
Locale("MS\\0x409"),
1 s: h' n5 Z( x; v# R Description("Class to test Query/Set a package"),
2 ^4 K4 I1 G1 T$ q7 V$ } guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}")
6 |# a, @/ [. i% ^]
. J- D% N. j" gclass AcpiTest_QSPackage, Y& j6 S' ?6 T+ F3 b) b3 Y: f5 ^# A
{
# p: @; u1 [8 k [key, read]0 q0 V- D3 [9 i2 r- W: N5 z
string InstanceName;
s8 R) i: R& s& N: Y$ c [read] boolean Active;9 e5 g+ n+ ~1 _( {+ h
% R& O: d1 v/ N [WmiDataId(1),/ N% r( `) ~0 @1 e; a$ B1 t. ]$ |5 h
read, write,. w7 A- \8 E) r. g
Description("description")
' q8 T q) E0 U) y8 b7 w ] Package Data;# t7 P; g2 J8 O& Z) s% T0 h! J
1 V- V$ o' `) j4 G& l& S$ @% K M( G
};+ `3 W9 j `3 K6 B! ]( @3 n
5 _7 l( ?2 k$ Y4 T% W# I
请教各位大侠,如果我想得到 packge 类型的Data 是不是用:* P0 R( G4 ?; J) q7 I% h' c
8 S2 X7 D9 p/ O4 f3 R
hres = pSvc->ExecQuery(
, b D, m* m1 F3 W% p4 }9 p) _# `4 b bstr_t("WQL"),
+ t5 A" w! m) R bstr_t("SELECT * FROM AcpiTest_QSPackage"),- V' ?; v! N% l5 U& B! t3 P! @
WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY,
. e, b/ [( ?. K. I4 V/ T5 ^, u NULL,6 G3 A' v6 l1 P& h+ ^
&pEnumerator);( g' `4 m& }+ _# z7 K
+ N R: B, L8 K( `9 v* z% W" N: _HRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1,
5 M0 |/ O3 S2 f2 f1 F6 { &pclsObj, &uReturn);2 q0 c* `9 G2 O5 r, G& c
' W# P8 D; Z4 n+ c2 L8 u9 ]
hr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);" D6 ]/ Y& e) o
如果是的话,我下一步要怎么操作vtProp?/ ^7 V+ Z, j8 s4 O! q
单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了! |
|