dhll 发表于 2007-11-26 18:47

【求助】【悬赏贴】【2000nb】悬赏移动电池位置方案

目前我的电脑 任务栏是两栏
但是开始按钮下面空着 浪费一块
电池图标在右边 有占一块
于是悬赏2000NB
赠与能够将电池图片挪到开始按钮下面的解决方案

PS:我见过一个同事的电脑就是挪过去的 但是他的电脑从it部门领来就是那样的 具体怎么操作不得而知
PS2:悬赏标的写的虽然是10 但是解决之后 个人通过转帐方式转过2000nb给解决之人

cooldavy 发表于 2007-11-26 19:02

基本没啥可能,用vista算了,可以扔在sidebar里面:D

[ Edited bycooldavy on 2007-11-26 19:03 ]

dhll 发表于 2007-11-26 19:49

Posted by cooldavy on 2007-11-26 19:02 http://210.22.15.166/forum/images/common/back.gif
基本没啥可能,用vista算了,可以扔在sidebar里面:D

[ Edited bycooldavy on 2007-11-26 19:03 ]
本来桌面跟任务栏就不够用
还sidebar呢。。。

lkj1025 发表于 2007-11-26 20:03

不用IBM的本,不想研究,纯帮顶:D :D

river_s 发表于 2007-11-26 20:34

悬赏2000就挂10NB上去?强烈BSLZ!起码得挂200个上去吧?

_1234 发表于 2007-11-26 23:54

我来挣这2000nb吧。:D



下载直接运行就可以了。

shisannj 发表于 2007-11-26 23:59

貌似以前有人发过类似的帖子

dhll 发表于 2007-11-27 08:24

6楼的下载了
运行美反映啊

dhll 发表于 2007-11-27 08:25

请贴出修改教程

river_s 发表于 2007-11-27 09:07

Posted by _1234 on 2007-11-26 23:54 http://www.ibmnb.com/images/common/back.gif
我来挣这2000nb吧。:D

477398

下载直接运行就可以了。
477397
同样运行了没反应……是自己编的吗?里面是什么内容能说说吗?
DD赶紧反编译^u^

Hans 发表于 2007-11-27 09:21

呵呵,移动的窗口不是PwrMonitorWindowClass,新版本的是PwrMgrTrayGaugeWindow

dhll 发表于 2007-11-27 14:24

6楼的对应的是什么版本的电源管理软件?
我用的是su更新的最新版本的

dhll 发表于 2007-11-27 21:51

自己顶顶

Drifter 发表于 2007-11-27 22:01

用高分屏吧.

8610 发表于 2007-11-27 22:03

根据6楼的软件和11楼的说法改一下。。。。谁行谁上。。。呵呵。。。

_1234 发表于 2007-11-27 22:38

呵呵,移动的窗口不是PwrMonitorWindowClass,新版本的是PwrMgrTrayGaugeWindow

我的powermeter版本比较老吧,修改了下,楼主试试吧。

附源代码。(ASM)start:
      invokeFindWindowEx,NULL,NULL,"Shell_TrayWnd",NULL
      invokeFindWindowEx,eax,NULL,"PwrMgrTrayGaugeWindow",NULL
      test    eax,eax
      jz      .error_find_window
      invokeMoveWindow,eax,0,32,80,28,TRUE
        ret

.error_find_window:
      invokeMessageBox,NULL,\
                'Can not find PowerMeter Window :(',\
                'Information',\
                MB_OK+MB_ICONINFORMATION
      ret

[ Edited by_1234 on 2007-11-27 22:42 ]

AlexFlying 发表于 2007-11-27 22:44

LS的,,下载不来呢!?
“附件文件不存在或无法读入,请与管理员联系。”

dhll 发表于 2007-11-27 23:20

16楼的太棒了
但是有几个小问题 需要改正一下
1 程序需要每次都运行 不是运行一次 终身受益
2 一旦改变任务栏层数 或者锁定/解锁任务栏 软件就失效 需要从新运行
3 电池图标显示不完整图3

4 任务栏右侧原电池显示位置仍然不能使用图4

1000nb先送上
通过转帐方式 请查收

[ Edited bydhll on 2007-11-27 23:25 ]

dhll 发表于 2007-11-27 23:26

Posted by Drifter on 2007-11-27 22:01 http://210.22.15.166/forum/images/common/back.gif
用高分屏吧.
目前2台T43 都是SXGA+屏
在家接2407没问题
出去干活时候就没办法了
干活的机器不是自己的
没法改屏

shifeifeishi 发表于 2007-11-27 23:41

高手呀。

Hans 发表于 2007-11-28 13:26

Posted by dhll on 2007-11-27 23:20 http://www.thinkpad.cn/forum/images/common/back.gif
16楼的太棒了
但是有几个小问题 需要改正一下
1 程序需要每次都运行 不是运行一次 终身受益
2 一旦改变任务栏层数 或者锁定/解锁任务栏 软件就失效 需要从新运行
3 电池图标显示不完整图3
477860
4 任务 ...

因为原来程序就是画了个窗口上去,所以每次都得运行,要是其他方式,估计就不用这么麻烦,可以自由移动了

Hans 发表于 2007-11-28 13:29

Posted by _1234 on 2007-11-27 22:38 http://www.thinkpad.cn/forum/images/common/back.gif


我的powermeter版本比较老吧,修改了下,楼主试试吧。

附源代码。(ASM)start:
      invokeFindWindowEx,NULL,NULL,"Shell_TrayWnd",NULL
      invokeFindWindowEx,eax,NULL,"PwrMgrTrayGaug ...


哈哈,直接汇编,你才是牛人,很少见这种编程了,非高手不能为

dhll 发表于 2007-11-28 13:59

Posted by Hans on 2007-11-28 13:26 http://210.22.15.166/forum/images/common/back.gif


因为原来程序就是画了个窗口上去,所以每次都得运行,要是其他方式,估计就不用这么麻烦,可以自由移动了
今天上午又用了用
时常出现图标自己回位的情况
我想能不能给反编译一下 然后修改再编译呢
自己完全不懂编程 大家别笑话
还有 在xp默认主题下 显示没啥问题
在xp经典主题下 显示就只能显示一半

_1234 发表于 2007-11-28 23:30

Posted by dhll on 2007-11-27 23:20 http://www.ibmnb.com/images/common/back.gif
16楼的太棒了
但是有几个小问题 需要改正一下
1 程序需要每次都运行 不是运行一次 终身受益
2 一旦改变任务栏层数 或者锁定/解锁任务栏 软件就失效 需要从新运行
3 电池图标显示不完整  图3
477860
4 任务 ...

多谢楼主的nb了,呵呵。
这个程序只是移动了PwrMgrTrayGaugeWindow这个窗口
就退出了,并没有实时的监控,所以一旦刷新任务栏,比如
改变任务栏层数 或者锁定/解锁任务栏等等,windows explorer就会重画
窗口,PwrMgrTrayGaugeWindow就回到原来的位置了。
要解决这个问题有两个办法:1.实时监控PwrMgrTrayGaugeWindow这个窗口,
这意味着要在后台多运行一个程序,至少需要开一个线程。
2.修改PWRMONIT.DLL这个文件(估计窗口是它画的,没仔细看),
改变绘制PwrMgrTrayGaugeWindow这个窗口的默认位置。
这个比较麻烦,反汇编,patch,如果软件升级又得重新反汇编,patch...

所以比较折衷的办法是:锁定任务栏,运行movwnd.exe;
至于显示不完整的原因应该是我所设定的显示窗口太小,稍后修改一下,
你可以任意设定PwrMgrTrayGaugeWindow的大小和位置(相对于任务栏)。

要感谢Hans斑竹的nb和他的提示,我的powermeter版本比较老,
不知道现在的电源管理窗口改成PwrMgrTrayGaugeWindow,呵呵。

liujirong 发表于 2007-11-29 00:35

呵呵!这儿高手确实很多啊

_1234 发表于 2007-11-29 00:37

movwnd.exe 1.1

用法:movwnd.exe <x y width height>

x - 电池窗口左上角点的x坐标
y - 电池窗口左上角点的y坐标
width,height - 新的电池窗口的宽度和高度

x,y相对于任务栏窗口,最初我所使用的参数为: movwnd.exe 0,32,80,28

dhll 发表于 2007-11-29 11:08

又有新问题了
当任务栏刷新的时候
就是当右侧时钟位置显示的图标发生变化时 比如开启qq 或者msn
就会导致任务栏刷新
文件失效。。。

ppwhb 发表于 2007-11-29 15:31

强人啊,用ASM编程的

river_van 发表于 2007-11-29 15:33

佩服高手,致敬!

dhll 发表于 2007-11-30 11:19

自己顶起 还有1000nb待发放
页: [1] 2
查看完整版本: 【求助】【悬赏贴】【2000nb】悬赏移动电池位置方案