|
|
在MS提供的acpimof.mof文件里定义了两个class,分别如下:
, e- a, r& a: c) ?0 ^1 {# i0 c# y3 g1 j& G: `
class Package3 d# Q+ O# i5 `! [# H
{
, t( \+ \1 R0 @; `4 x: \ [WmiDataId(1),
7 n: A1 G8 r" ~; p; c% t! | read, write,7 O) [# v% w0 ]2 h
Description("16 bytes of data")
( o# x4 J% {- X& r3 I1 a2 d1 ^ ] uint8 Bytes[16];/ N" `8 A, D1 {5 e% z
};
: l- ]: g, c+ O" L) ~3 d. Z5 a9 J
/ g. |+ g' O! F& O7 c[WMI,
) z7 d8 k1 o: @3 R1 V5 T. D; L5 R7 \* x Dynamic,
* T, c8 _2 ?1 Y# J& p, n* M6 F) x Provider("WmiProv"),* w' o" G9 \; ^
Locale("MS\\0x409"),# l( u0 N8 [' G& H$ y6 j" M
Description("Class to test Query/Set a package"),: y7 H# [$ R; g" w2 }
guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}")' v! r8 S+ G: M' D O1 r1 S( Z5 Z Y
]' H: f* q) e& ~0 ?
class AcpiTest_QSPackage' _* S" J" w( ^+ u# E
{; D7 K( z" G* F3 q* y
[key, read]3 Y+ U! c+ R0 s) I* J
string InstanceName;9 J7 t' U/ k4 K$ v
[read] boolean Active;
7 E0 r4 E/ V* R& `, j- |
L9 \* _4 A( n! p* b/ x( m# k [WmiDataId(1),
; d2 _8 \' u! e1 W( k read, write,
# k7 M% I% v) J6 m Description("description")
& u7 M2 ]' i/ A$ T5 l ] Package Data;; t& P3 v, ^& w, h: M. x
' S5 N+ q$ Z" c( m
};
~' ]! B! L, H& _, ^
+ Q8 R+ K! r! W5 z5 J7 e请教各位大侠,如果我想得到 packge 类型的Data 是不是用:" k8 |9 _! w) M3 q
) D, p4 j4 r, r3 Bhres = pSvc->ExecQuery(; P' w4 f$ _) S2 r- n
bstr_t("WQL"),
; Q0 @# A3 C! @: |5 v4 c M! z0 I bstr_t("SELECT * FROM AcpiTest_QSPackage"),9 f6 d9 S9 p. N, y# |) t
WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, 4 t; b7 W2 ~4 P+ S, ~
NULL,
z; ~# F$ |# |* Y &pEnumerator);0 G4 u+ W* Y0 E* R3 N
! p# u6 M! z$ b7 R4 x: H p+ U
HRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1, - X z4 A% k) w2 X' _ G" l0 F
&pclsObj, &uReturn);: |% T0 m0 R9 O& q$ ]
( a& M" w/ a$ U9 a% S1 o& Shr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);
* `3 ]' r- H' R" F如果是的话,我下一步要怎么操作vtProp?
) h# M. w a2 f; g$ U- K# t单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了! |
|