找回密码
 加入计匠网
搜索
热搜: BIOS ACPI CPU Windows
查看: 13287|回复: 1

请教关于wmi and acpi

[复制链接]
发表于 2008-6-23 17:45:13 | 显示全部楼层 |阅读模式
在MS提供的acpimof.mof文件里定义了两个class,分别如下:
" Y$ F$ k) z3 v% c+ ]& w0 d8 A" t# X* M
class Package! M$ _& V  P1 i" F7 S
{
7 Q; M) N" o1 D- ?    [WmiDataId(1),) n  R# j9 Q2 h7 e3 g
     read, write,
9 o6 Y. a2 b; ]; l0 V# h+ q     Description("16 bytes of data")
' Q; h0 h8 v, k    ] uint8 Bytes[16];! z* X) G1 _/ c9 ~! v8 o
};, [/ G: Q, O' C2 ?( K& ?

! F2 S; X: \, l6 P6 u( y) ~, I0 y[WMI,
! L. B$ q- e! s Dynamic,
- q* N7 G& Z# w! V5 S Provider("WmiProv"),
3 A+ m, F2 N1 b$ S/ \! y Locale("MS\\0x409"),  P9 d6 _) b* o9 r7 T8 ]+ y
Description("Class to test Query/Set a package"),7 v" J, Z4 B! A% ~
guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}"). R' P/ F$ T1 J
]
. U8 \* Q! ^6 {+ R- O& _class AcpiTest_QSPackage: F, Y  j) k+ ?* a
{
+ ~3 e0 B$ q& t! s8 _' J    [key, read]6 ]0 f7 a3 m. g) S( i7 G0 h0 M& [
     string InstanceName;; X& k7 K* p- T  ?' j
    [read] boolean Active;
# g) z0 O5 h: G5 v% y& t% p" ~# D( `
    [WmiDataId(1),% R* t( ]  n9 q1 ^; a" Q
     read, write,# ^$ x- o( F7 a; s2 w
     Description("description")
) y9 I2 V1 k2 _, I: A  S2 A    ] Package Data;
$ `7 J* a% B! r% y# }8 {" P0 p8 Y
5 C6 _/ I3 O) y- Z};$ s  Q* w# ~% r* M: \+ O

: o* T3 M; \  s! I$ J请教各位大侠,如果我想得到 packge 类型的Data 是不是用:
: `7 Q4 H$ p6 ^3 t% l
" x/ v" B% Q% Y3 V! H7 jhres = pSvc->ExecQuery(* a2 X: R6 ^7 s8 M
        bstr_t("WQL"),
% U3 W: i7 v* j8 q0 i        bstr_t("SELECT * FROM AcpiTest_QSPackage"),8 d, G/ }# y4 Y8 ^! Z4 S  t, L
        WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY,
: J& s3 z8 p1 B7 i/ B6 U/ ?        NULL,2 k, N7 j2 Y8 c3 a+ @* w
        &pEnumerator);
: t5 @9 ?& F: V& R
% p; g1 A8 m% E: U# G- I. uHRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1, " F. s" V' h* J  y8 ~6 n  R
            &pclsObj, &uReturn);: c1 O6 A0 W2 B( c. U& R+ }# r+ B1 d
  `) N! Y. T% q7 W
hr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);) _: C  N0 l) i8 i5 d- M
如果是的话,我下一步要怎么操作vtProp?7 B- F4 }4 c' Q8 g0 }4 s
单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了!
发表于 2008-6-23 18:32:31 | 显示全部楼层
方法之一:在Package已知长度的情况下,使用固定长度的数组。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入计匠网

本版积分规则

Archiver|手机版|小黑屋|计匠网

GMT+8, 2026-6-29 04:08 , Processed in 3.434589 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表