|
|
在MS提供的acpimof.mof文件里定义了两个class,分别如下:6 n& ~# X8 F' M5 Y9 q) J( a
( m. `$ e" B! K! C: L% K4 p% m; [
class Package
. C' K- r4 ^5 t0 Z{3 ~3 @# z2 K5 U* l3 D4 ?* u
[WmiDataId(1),
. u3 k1 N5 h- i: s$ j: N# } read, write,
% |7 P" N; F1 u Description("16 bytes of data")/ Y- ]! i( ^! t# D7 e3 v
] uint8 Bytes[16];7 A9 b, N! |" i
};
/ M) q$ ?8 U- V& O2 A/ q( y7 c2 M7 a8 r; o) u) I E3 S
[WMI,
- ^! {$ e- @& Y+ w9 j Dynamic,
) W( F7 v: y' q) Y- r Provider("WmiProv"),, k2 N: f9 i8 x
Locale("MS\\0x409"),
; C! b; b! B6 U Description("Class to test Query/Set a package"),' i8 y- b x& T1 r& R$ |
guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}")7 m; w% O$ L1 f' a. e: H
]8 F" {6 E, {% q' D5 ^5 h
class AcpiTest_QSPackage
! T& ]/ g( e. ~( s1 g7 R5 L, Q{
4 w; c1 D+ h5 W# O [key, read]
$ n! g" {1 F- B. x string InstanceName;
( E1 s' t+ f6 i2 A/ C [read] boolean Active;% ]- Y0 N5 I* @( U. P5 r
4 I' }7 L' x2 l2 ^* w @$ C! n
[WmiDataId(1),
% W3 `- q( x6 F3 ^( ?8 L read, write,% K- [- I' y2 [+ k( D
Description("description")0 |& @; G- w9 e5 U
] Package Data;) n( ^3 @+ d# s( B
& |: f: l6 T5 Z+ i; I8 B6 g3 c. E};
; z+ H) v; X8 _2 b" R' _: u f9 M' C8 F s3 U* |' z( T; @+ u
请教各位大侠,如果我想得到 packge 类型的Data 是不是用:& X* {+ d3 k2 o3 ?% j+ g8 e
3 k0 s% l, @& W* ?( t( v/ w
hres = pSvc->ExecQuery(* v( v0 M1 K1 Y& o2 f& Y
bstr_t("WQL"), 9 L ]: T; N# v3 C/ o1 v% a5 G, u
bstr_t("SELECT * FROM AcpiTest_QSPackage"),2 Y8 L2 ]7 b( R' T" V, s* a+ H
WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, 9 A8 P7 _0 K+ N+ \8 L% n5 {
NULL,
+ w+ R1 n' i+ n" [0 b &pEnumerator);$ N0 ?0 m' z* ~9 h# S+ a: c
{9 c$ y$ }/ {- w& ?HRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1,
' m& V, F% d+ |/ I &pclsObj, &uReturn);
. v. V$ d* I' V$ Z! U/ s8 N) ]1 Q2 z
hr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);
" U, j7 Z5 D7 F+ f) `5 @% b如果是的话,我下一步要怎么操作vtProp?1 b) z0 F7 e! F2 ?( y0 W$ _- n
单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了! |
|