|
|
在MS提供的acpimof.mof文件里定义了两个class,分别如下:
2 ?7 l$ T3 P5 y4 c) A' l$ ?+ N+ Y3 r
class Package5 S* }0 V) B% s9 W7 }- O n
{
0 X% f5 |& P4 B3 u! [( I u! Z [WmiDataId(1),
5 W) B4 ~! Q9 C Q e read, write,
5 |$ g2 ^$ z# ~# X Description("16 bytes of data")2 j0 v+ d7 d+ A! n. t
] uint8 Bytes[16];
4 v1 y ^1 o0 i% A) h: ?};6 S4 |$ o; ~. U( `6 U9 y; B
7 r7 F1 c7 ?+ u4 ]* _, v
[WMI,$ Z6 S Z+ i& {) X
Dynamic,4 n) J2 C9 v, [
Provider("WmiProv"),+ m0 [6 I/ t1 G: R# Z
Locale("MS\\0x409"),+ B# F2 X) U( Y) H$ i5 d$ |
Description("Class to test Query/Set a package"),: t& J! F- t& _( Y$ B- N8 m b! Q
guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}")7 e; B6 R- ^# \4 c8 X) z! Z
]
$ U. F0 C0 W! v$ oclass AcpiTest_QSPackage% p+ v1 h" p' X4 ]3 e4 w/ m0 ^) I
{
+ U/ |/ i; R2 a( }4 g8 ^0 ` [key, read]- \5 g3 B4 ?6 Q. t. y5 ^' z
string InstanceName;
5 O/ a! Q& ^6 V+ u [read] boolean Active;* Q- P, h; N4 Y5 s
) s# \2 F; Q1 w [WmiDataId(1),2 L. z) k, [4 w0 e; U
read, write,0 J' e% H N# t+ X! E2 F% E
Description("description")
- x. ? @& f1 Q. ~- c$ D2 A ] Package Data;7 h. S! p- ~: q+ X& q% g+ a9 l
0 F3 B$ _ T8 j6 Y- s8 d
};
! Q; a1 n/ X9 e! T4 R) S+ o
$ B) R! M/ A; W# @1 O# J; j* c请教各位大侠,如果我想得到 packge 类型的Data 是不是用:4 z2 h- A" t L8 c
+ A2 n8 y. r) C
hres = pSvc->ExecQuery(
# z: N% I1 [+ j, f& ?4 \$ q2 n% x bstr_t("WQL"),
% D7 d: L; W4 Q& P u V bstr_t("SELECT * FROM AcpiTest_QSPackage"),* n# O& |% b7 y7 v- n8 J
WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY,
4 `+ J! k$ u$ P: x0 W NULL,2 T+ }2 D6 S/ M/ Y
&pEnumerator);
# v* z1 z2 C2 [
9 `" r! ]: h6 ]9 ^HRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1, - R. [) p* J: u" K0 S6 r e
&pclsObj, &uReturn);
8 p5 W) {+ k( h1 I: J0 B4 F
3 G5 s* @: F: }hr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);
% i, Z7 }0 j' o9 Z如果是的话,我下一步要怎么操作vtProp?
3 D; ^* S2 ~2 y( f5 t单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了! |
|