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

请教关于wmi and acpi

[复制链接]
发表于 2008-6-23 17:45:13 | 显示全部楼层 |阅读模式
在MS提供的acpimof.mof文件里定义了两个class,分别如下:. b3 D' `6 S8 }, {, F* X$ l7 f

( P& z9 S5 ^5 I0 {class Package
0 a, q# y: @  s' y% r$ ^; C0 e$ t) a{; y6 P: }( T, ]' y( }* J
    [WmiDataId(1),, e" E) v0 T# q9 t& l8 {5 W$ @
     read, write,0 f5 A. w% O: [7 P" N1 p4 ^
     Description("16 bytes of data")
5 \: x* D8 u9 W0 h' A    ] uint8 Bytes[16];
9 J8 s3 k2 W8 H9 v: K};9 k4 k. i6 H! Y2 @
7 A8 x- r5 c; W4 U0 A' W
[WMI,
7 `" N! y( ]2 r+ @$ H1 G$ v( q& m Dynamic,7 T& B  n  V" a; G6 \/ J# j
Provider("WmiProv"),
. ^* K' v4 l) j Locale("MS\\0x409"),& |% s0 _4 X/ T5 Y
Description("Class to test Query/Set a package"),
/ v( b$ A- A# h" p2 I7 E& `, ^5 D guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}")
  h$ C+ K& ?0 }$ N]5 a) W' r9 S+ b6 @) M9 n
class AcpiTest_QSPackage# K. Y1 D! z5 ^$ \+ j
{
5 S& R% L  s, t! A) A3 p. @    [key, read]4 k  |0 F- G0 ?/ ^% D! L- L+ C7 e
     string InstanceName;
6 F2 @1 E. {" M    [read] boolean Active;5 o" P% D; F. e- R0 ?- e
# O0 w, I' L) h7 S/ U1 s) G
    [WmiDataId(1),% T% j; }6 J% }2 S; _
     read, write,& b! M, ^, t! @7 Q9 X
     Description("description")
( J! G& v+ {, }7 H+ W    ] Package Data;: y% G& e! f4 C& V7 P, K0 D1 o# I

  ^: f  C; F( U. i};) {- ~* R7 ?- |

- v) B; m* ~+ m* o; d( o* a请教各位大侠,如果我想得到 packge 类型的Data 是不是用:
/ ?4 V, {  E" A+ F4 i; y3 a1 [- d& h' E: o; [) m2 D
hres = pSvc->ExecQuery(
3 l7 [1 `% M! r% {# Z; W8 j$ ^        bstr_t("WQL"),
6 t! k& p3 p  ~: U9 G2 s( Z: y        bstr_t("SELECT * FROM AcpiTest_QSPackage"),* r6 {0 d" c3 [4 H' b
        WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, , s7 C* T: Y1 J$ \
        NULL,
. o3 B6 b2 D* y$ N/ v1 r        &pEnumerator);
6 ]1 B8 s8 b' N  f. j
& I' K( d. a  HHRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1,
: o) g$ a7 N& A: j5 [            &pclsObj, &uReturn);" S) w" D9 N4 ?/ G# ^' a9 ?4 B
/ }) W5 X7 t- m" X: q& ?
hr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);; p8 _8 d! a3 ^3 f* ~' H
如果是的话,我下一步要怎么操作vtProp?
. D- k8 P; |  o0 h4 K- b/ w4 S单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了!
发表于 2008-6-23 18:32:31 | 显示全部楼层
方法之一:在Package已知长度的情况下,使用固定长度的数组。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-11-3 23:12 , Processed in 0.964196 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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