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

请教关于wmi and acpi

[复制链接]
发表于 2008-6-23 17:45:13 | 显示全部楼层 |阅读模式
在MS提供的acpimof.mof文件里定义了两个class,分别如下:( K$ m+ G' {+ E( H0 Q/ O

, ~; I* \+ s  O2 D" v- ^class Package
0 U+ F" u. I- E- V{
* d; C  I( @0 L8 }# G    [WmiDataId(1),3 J  ^+ `0 I* t8 e7 c: e* B
     read, write,. j/ q2 s* X7 g. J& p! W
     Description("16 bytes of data")( T% H+ L) Q, ?
    ] uint8 Bytes[16];
# Y* i  D1 \6 v9 }7 I4 `$ u0 D};% n( ~/ g/ e' f3 ^

# w# g& D! \, ]3 o3 w6 \[WMI,8 L0 z: s$ Q% x1 o! Q
Dynamic,
/ w" ?5 x$ d* o3 D; L. E Provider("WmiProv"),
# `% e2 K/ E+ `+ i$ ~# ]# O4 T Locale("MS\\0x409"),
$ W* R  ?6 Q$ }# N7 D Description("Class to test Query/Set a package"),
$ z! U0 v' Q4 Q. K guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}")1 j* d+ B8 S+ F$ Q6 R1 |
]
: @, ^6 j3 L* G% }/ B( S, Hclass AcpiTest_QSPackage
4 ^( z7 e0 T, S( U( d3 v1 A( Z5 G( f{
9 k. Y. Q) ]3 @( c: C    [key, read]
( m+ ?9 p. j8 p, t0 F8 T% C     string InstanceName;/ D% @' ?/ S2 Z3 H' @! M# O
    [read] boolean Active;2 S) c# K. J4 X# ^, L- S

, ~( ]# U2 W* U2 k: I    [WmiDataId(1),
# y( G0 O; u+ k6 J( V4 ?0 E9 \     read, write,
& A3 M, S+ E2 r* x2 B( s' Y$ m     Description("description")
% S5 h/ L. W( f- h& n% C    ] Package Data;
9 |* q% V& q: u$ _' m/ |
6 J! K! S$ R+ W# j8 p+ k2 p$ h};& x, \) T# {$ D1 {0 h
7 A; U- a6 V  D& {
请教各位大侠,如果我想得到 packge 类型的Data 是不是用:
( Q8 P) X! q; g. {; _* G% g' g, D: N' N0 Q/ `
hres = pSvc->ExecQuery(! V, _3 r( T6 z8 f% K! D8 U% h7 ?
        bstr_t("WQL"), 7 L/ S8 U# h0 ~9 P( P" `& Z0 r* ]
        bstr_t("SELECT * FROM AcpiTest_QSPackage"),$ `# p/ W6 `" v: D$ }) f
        WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY,
6 H1 ~' b$ U' B/ C0 U2 q4 l        NULL,
/ D. c8 a+ x' Z/ j        &pEnumerator);
* x$ v' v% H  h' C0 M: ~
2 {# M  R2 X4 L+ z. D7 tHRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1,
5 _4 q. I8 v* l& G  S" d/ a3 I            &pclsObj, &uReturn);# A9 G" v; ~1 Z5 ^. H

3 |4 ?6 @* ~' [. ^/ K/ Ahr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);
: A$ J6 @+ ?0 B' {, q0 X如果是的话,我下一步要怎么操作vtProp?5 i1 a0 P' b) _0 j( v; Z
单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了!
发表于 2008-6-23 18:32:31 | 显示全部楼层
方法之一:在Package已知长度的情况下,使用固定长度的数组。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-8-11 17:01 , Processed in 0.047875 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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