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

请教关于wmi and acpi

[复制链接]
发表于 2008-6-23 17:45:13 | 显示全部楼层 |阅读模式
在MS提供的acpimof.mof文件里定义了两个class,分别如下:/ K" U5 U4 h, N

. Q/ Z& N. O/ q3 Hclass Package
2 k* B- l# ~: e' l# F8 x/ \/ o/ l{, x% H+ a" i. [  ?
    [WmiDataId(1),2 L2 v% T$ d4 u4 J! |
     read, write,3 ]" G+ E: }8 a$ r) G( ]
     Description("16 bytes of data")
2 U# B7 B. k4 l& @    ] uint8 Bytes[16];* K9 s% m- k0 T+ o1 I  p8 Z% G
};
) H0 X0 w% h0 g# u+ N# r9 ^( f; k( S' G
[WMI,# V6 S/ X- F/ }5 s% i, y3 Y
Dynamic,0 c# b0 }) k  `
Provider("WmiProv"),
" r( V6 b) n; c7 d+ k4 l. C# C* H Locale("MS\\0x409"),
7 m( |* |% @5 g3 b Description("Class to test Query/Set a package"),# n9 S/ n* G7 K1 L- v0 G
guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}")
' _7 M2 Z7 H& B7 k" h. j]: a! w$ ]% w2 U; `6 z
class AcpiTest_QSPackage
1 [2 _5 d, z2 @, C2 \/ H$ z. z{
- E0 a9 V, E! |1 S% v# c% S+ r    [key, read]2 }9 p6 n3 C; D7 C5 K
     string InstanceName;
* K6 Z& N8 [" N& R; C/ W    [read] boolean Active;6 U5 H5 z0 n! X2 G- ^" l
, H7 C, p. m6 N. E
    [WmiDataId(1),
% d' }/ g, t9 I# z  O9 S- p9 K+ i     read, write,
- m/ t5 w/ M- u) j1 A     Description("description"). P; U3 i% j" g$ C. i# ^! G+ N
    ] Package Data;
. g$ w6 N( v/ l* z. p* t+ `9 x% L. v) y
};8 k3 j) g6 q2 }

( t3 T/ c# s$ H2 i% @请教各位大侠,如果我想得到 packge 类型的Data 是不是用:0 f8 ^7 e  ~/ S' G
/ a# l4 L, G. {- g4 |
hres = pSvc->ExecQuery(4 W8 P$ S2 ?# ?. H0 g' c
        bstr_t("WQL"),
7 D6 O% w0 E6 w) s        bstr_t("SELECT * FROM AcpiTest_QSPackage"),, V7 ~% w" ^6 I. Q" ?5 h) G
        WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY,
8 D3 e2 K- C: X2 @        NULL,
" F$ b6 B1 Z8 h' u; y3 f        &pEnumerator);
/ T; C  H- H( ]2 G
" N  U5 ]% N  D* Z4 mHRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1,
) w7 D- s% o  C( x+ M* t& c            &pclsObj, &uReturn);
/ X0 Z1 f1 R0 T! j/ u& Q* l3 x, E
/ m& ]2 z+ C+ c9 M" _9 H5 Q- Fhr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);3 I( b8 j* g. r1 _8 D: x% F  j2 x
如果是的话,我下一步要怎么操作vtProp?- j1 o4 `' F# y8 q0 W
单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了!
发表于 2008-6-23 18:32:31 | 显示全部楼层
方法之一:在Package已知长度的情况下,使用固定长度的数组。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-12 06:04 , Processed in 0.037691 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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