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

请教关于wmi and acpi

[复制链接]
发表于 2008-6-23 17:45:13 | 显示全部楼层 |阅读模式
在MS提供的acpimof.mof文件里定义了两个class,分别如下:: D( f- W: h0 M2 h# H

% D6 g. c% ]3 U3 X2 C! C% Qclass Package
; `6 b4 J8 \) Z* e( D{( H! Q6 n/ z6 q6 v* u9 ]7 \
    [WmiDataId(1),
! J4 q8 p' _) M$ G( H     read, write,/ |4 o0 s) x5 C5 _, d
     Description("16 bytes of data")* b1 s8 K! B. K. ^
    ] uint8 Bytes[16];
: ]4 C' x" Y( n5 q# |7 O};) K( `* J  Y( m  E% O

2 f, }9 \$ N/ Y5 x4 v[WMI,! k" g) a( _. P! M: ~% P& @, W
Dynamic,
5 d! V+ N' D# C/ M6 K5 J Provider("WmiProv"),6 E6 y( b2 ]* U, S0 _5 r. \6 ], i
Locale("MS\\0x409"),
' E4 V9 f& w' @ Description("Class to test Query/Set a package"),# z2 ^3 K5 T) Y5 G- G
guid("{ABBC0F6a-8EA1-11d1-00A0-C90629100000}")9 i: y9 O. Y2 Q9 _6 E* x
]
5 b6 A( m' H. |/ G4 Y; dclass AcpiTest_QSPackage0 \6 Z  _4 N) d5 i' }9 Q
{" D# Z1 q1 R$ {* z% ]" m" J
    [key, read]
5 H6 J3 o5 H/ A7 Y     string InstanceName;
, K2 Q  Z: L: k3 t$ A! z, L, Q# `    [read] boolean Active;8 T& }. }( {7 s" p- ?+ x
4 d8 U3 m# I7 C) M0 s* T8 y
    [WmiDataId(1),
8 j' }  e1 ?& R# a" e8 T) u, l     read, write,. L1 X) g# U& v! |- D4 j
     Description("description")
& v, @7 \6 s8 Y$ T  K5 h5 ~; F- c7 O    ] Package Data;
  l- x0 N6 R6 K4 o$ @
2 L$ n' V9 R3 f' D% o3 E4 E};
# ]) k7 R' E! U
: n7 q4 a* Z0 H& ~, q, q请教各位大侠,如果我想得到 packge 类型的Data 是不是用:4 d+ v9 b$ L+ }8 U  E
' ~: V1 ^7 v( d8 b& E
hres = pSvc->ExecQuery(8 i# V- d4 q6 m; k$ V9 }# }
        bstr_t("WQL"), 5 Y# w* Z/ T4 m  f0 Y
        bstr_t("SELECT * FROM AcpiTest_QSPackage")," y9 t% C: O6 n5 _7 T- z
        WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, 5 k8 Q- d& l" \
        NULL,* s) Q- a- w2 _" L# s+ d' _2 \" w* c
        &pEnumerator);5 l  j+ B- y2 O- I. W. }& Z
3 t0 C' c1 P, g) R( R7 H
HRESULT hr = pEnumerator->Next(WBEM_INFINITE, 1,
! |* A) q2 r- M            &pclsObj, &uReturn);8 A. O! C+ ]1 ~! ^. a

3 o; O, U# C) ]1 e& Ahr = pclsObj->Get(L"Data", 0, &vtProp, 0, 0);6 _8 E* k% @$ t9 |' O
如果是的话,我下一步要怎么操作vtProp?
. X$ u: U, {/ F3 m6 N单个的数或者字符串能得到,就是不知道怎么得到这种package类型的数,这个问题困扰了好几天了,望知道的大侠能指点小弟。谢谢了!
发表于 2008-6-23 18:32:31 | 显示全部楼层
方法之一:在Package已知长度的情况下,使用固定长度的数组。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-4-20 03:39 , Processed in 0.123110 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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