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

請教Bini有關於ACPI-WMI的問題

[复制链接]
发表于 2009-1-19 13:45:27 | 显示全部楼层 |阅读模式
Dear bini大師,( P+ ]; ^+ ]6 h2 C
            大師您好~~
1 k' g, ^" K( R. M# B% C5 r            最近發現可以不用寫WDM Driver就可以執行或存取ACPI的方式,
  A4 N: b5 E8 ~9 ~8 ?            ACPI-WMI。
4 v: X) ~, Q3 G% l5 L 7 R, f% w# R) v+ \
            花了很多時間的survey跟尋找,發現了您的topwmirw.dll,並且可以
) k& H1 M* R: I9 h" r3 b& K                正確運作。原來您己經早在幾年前實作了這個部分,非常地佩服。
4 n# f; q4 s1 J  t; U
2 b5 ^, M0 A6 g: z( d8 ]3 j                想要自己實作一遍Read/Write的Function,於是自己也動手寫。
, x1 K) @) E+ t! X- M2 ~# B                Query Data (會call ACPI的WQxx method)的部分看來是沒有問題的。& P' i: O! [' [0 G% P
( ]1 j8 u  i7 Z
                可是寫了Set Data (call ACPI的WSxx method) 的部分卻是一直不能正確運作。
0 e3 p7 x) X& E: {8 w1 [                (IWbemClassObject:: Put回傳值卻都是NO_ERROR)4 O6 x- @/ R4 D9 v. ~  }! I

& M4 Q# O+ L& F, h* q# @                非常地困擾,請問大師可以指點一下我的源碼中的問題嗎?
$ ?$ A! ?0 o+ F3 Z* |" Z6 }1 g+ x                非常感激您的指導。
, O: X: U* T( A4 l* w                謝謝。0 T) o, F/ D6 z, A
* [% B+ n" J7 s$ }0 a- b- ]+ K
...! ~, q6 L' z$ k& ~/ v9 `9 ~* N! [
源碼於附件中

mycode.rar

942 Bytes, 下载次数: 1448

发表于 2009-1-20 10:14:00 | 显示全部楼层
你的代码看起来没有问题,请你确认一下:
6 D! j, A8 k; b) A9 G2 L9 C8 D* `1、BIOS WS方法是否是正常(ASL Code 中GUID&申明方法明细)。
6 T% t; C, D" x% v' b8 U2、VB Script的_put方法访问是否正常。+ h, T. {2 M8 m; i! [, c
3、用我的DLL是否可以。
回复

使用道具 举报

发表于 2009-7-30 15:23:52 | 显示全部楼层
我在做这一块的时候也碰到和楼主一样的问题:1 S( g1 Q, I* K, L6 ]' e% X
  用Query Data的时候可以进到 WQxx method, 且可以读出正确的数,
- t  k+ ^- C) d& I( s  但是在用IWbemClassObject:: Put写数据的时候,系统却跑不进WSxx method,不知道是什么原因。$ z/ X# T0 ?. X' R& i9 ]( |( y
( m6 |$ h4 H" X: {# v3 w/ g
但是,我用BINI大哥的topwmirw.dll就可以实现正常的读写,0 p8 f: ]" K3 i0 }
希望BINI大哥能否将写数据的这一部分源码公开一下,帮小弟解决问题,同时也帮后来做的兄弟提供一些借鉴。
回复

使用道具 举报

发表于 2009-7-31 15:36:23 | 显示全部楼层
问题已经解决了,还是对WMI不熟悉导致的.
+ B/ [5 \* B4 t3 LIWbemClassObject:: Put写数据之后,记得用IWbemServices:utInstance更新到WMI repository中就OK了.
回复

使用道具 举报

发表于 2012-2-2 16:10:15 | 显示全部楼层
原帖由 Morgen 于 2009-7-31 15:36 发表 0 X& C# N* P  _& R3 d$ Y6 G6 p# V. f( p9 k! Z
问题已经解决了,还是对WMI不熟悉导致的.7 t4 i7 V5 F* K3 A" R6 ^
IWbemClassObject:: Put写数据之后,记得用IWbemServices:utInstance更新到WMI repository中就OK了.

! V: s! f' L8 V7 F) E我现在也遇到这种情况,加上PutInstance之后还是不会call到WSxx里,不知道怎么回事
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-6-29 02:40 , Processed in 0.089515 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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