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

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

[复制链接]
发表于 2009-1-19 13:45:27 | 显示全部楼层 |阅读模式
Dear bini大師,
* K% M: V6 q. X0 J5 Y" t+ z            大師您好~~/ g7 Z7 T! z0 G  N* t6 }! ?# B! n
            最近發現可以不用寫WDM Driver就可以執行或存取ACPI的方式,0 V; r9 j$ ]4 R$ W. w  q( F
            ACPI-WMI。5 M& O3 t3 e* b! h; ?2 N, [

/ T* k  w' n9 Q% a5 _            花了很多時間的survey跟尋找,發現了您的topwmirw.dll,並且可以$ K3 n4 f1 ?9 {/ w8 j# L" [
                正確運作。原來您己經早在幾年前實作了這個部分,非常地佩服。0 x* k3 s4 _- ?1 d- n
+ [$ ^4 a9 ]- F9 v# \8 j4 b! M9 S
                想要自己實作一遍Read/Write的Function,於是自己也動手寫。0 C+ F7 B  x* G) y+ D
                Query Data (會call ACPI的WQxx method)的部分看來是沒有問題的。
2 Z( f# n  W7 d. [/ ~4 ~
$ L  z7 J9 Z  C- s$ Q" W9 h                可是寫了Set Data (call ACPI的WSxx method) 的部分卻是一直不能正確運作。
# M1 ?6 G; C' l& J: m$ J                (IWbemClassObject:: Put回傳值卻都是NO_ERROR)7 n" j  _' f2 x0 l5 B: A& h

; O" H+ X( Q( n, ]                非常地困擾,請問大師可以指點一下我的源碼中的問題嗎?* k) i# z9 Q/ d6 M% Y2 Y
                非常感激您的指導。
, C( [2 a$ K* ~                謝謝。( A3 k+ [' d1 d* U" a) t

1 D' A. p8 \# m6 V% ?0 H...$ n2 O; m1 V6 @$ m( k4 c
源碼於附件中

mycode.rar

942 Bytes, 下载次数: 1363

发表于 2009-1-20 10:14:00 | 显示全部楼层
你的代码看起来没有问题,请你确认一下:
' H# l  Q# I$ u* Q" _/ o1、BIOS WS方法是否是正常(ASL Code 中GUID&申明方法明细)。7 R/ V& o* [. D$ l/ {7 ?
2、VB Script的_put方法访问是否正常。4 q. h3 J5 d8 z( _+ B) T9 Z; R
3、用我的DLL是否可以。
回复

使用道具 举报

发表于 2009-7-30 15:23:52 | 显示全部楼层
我在做这一块的时候也碰到和楼主一样的问题:4 j* I/ f9 l5 \3 m# D
  用Query Data的时候可以进到 WQxx method, 且可以读出正确的数,6 c' E) o# K* ?* L" d7 p
  但是在用IWbemClassObject:: Put写数据的时候,系统却跑不进WSxx method,不知道是什么原因。
/ n9 {# Z/ j: K
" Y3 }# N7 f; ~- {& ~" M. O但是,我用BINI大哥的topwmirw.dll就可以实现正常的读写,+ h% x) s6 G2 G' T& q( P& @9 X* l$ B  S
希望BINI大哥能否将写数据的这一部分源码公开一下,帮小弟解决问题,同时也帮后来做的兄弟提供一些借鉴。
回复

使用道具 举报

发表于 2009-7-31 15:36:23 | 显示全部楼层
问题已经解决了,还是对WMI不熟悉导致的.* X' a; j- g4 s& s! A
IWbemClassObject:: Put写数据之后,记得用IWbemServices:utInstance更新到WMI repository中就OK了.
回复

使用道具 举报

发表于 2012-2-2 16:10:15 | 显示全部楼层
原帖由 Morgen 于 2009-7-31 15:36 发表 + e9 [+ Q. L. A, @0 U: G! I
问题已经解决了,还是对WMI不熟悉导致的.
# A4 B$ [. Q+ S6 d. a# t0 QIWbemClassObject:: Put写数据之后,记得用IWbemServices:utInstance更新到WMI repository中就OK了.
. S2 b  Q+ ?2 D2 c% L6 _# G
我现在也遇到这种情况,加上PutInstance之后还是不会call到WSxx里,不知道怎么回事
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-4-24 22:36 , Processed in 0.046047 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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