返回列表 回復 發帖

[分享] Away Mode Enabler - 開啟Vista/7的省電模式

本帖最後由 h999342 於 2010-3-14 07:20 編輯

Away Mode是Microsoft從Windows XP MCE 2005開始加入的功能
可以讓電腦在低電源下繼續工作
有點像睡眠,但又不完全一樣
因為程式還會繼續執行,網路還可以繼續使用
只是耗的電比較少
Vista和7因為有內建,所以只要修改註冊表來啟用即可
但是要找regedit不是所有人都想做的事
我就弄了一個自動的程式
http://www.xun6.com/file/636709f18/AwayMode+Enabler+1.0.exe.html

XP有XP的方法
XP跑這個程式是沒有用的

為了一些奇怪的免空
我在檔尾填了一些無意義的東西
覺得太XX的話
請自行將下方的code複製另存即可

檢查OS的最後兩行
  1. if not exist %windir%\system32\themeservice.dll goto wrong_os
  2. if not exist %windir%\system32\themeui.dll goto wrong_os
複製代碼
不知道為什麼會在封成自解檔後出錯
所以在發布版去掉了

不過themeservice.dll在Vista好像叫做shsvcs.dll
所以去掉那兩行又順便解決了另外一個沒測試到的問題

原本想用HTA做漂亮GUI的
但是按鈕換圖的時候
code明明正確,複製到新的檔案也可以執行
卻放進去沒用
真是討厭...

參考資料:
http://support.microsoft.com/kb/902437
http://www.microsoft.com/whdc/sy ... rmgmt/awaymode.mspx

Source code:
  1. @echo off
  2. TITLE Away Mode Enabler 1.0
  3. :oscheck
  4. if not %userprofile%==%systemdrive%\Users\%username% goto wrong_os
  5. if not %allusersprofile%==%systemdrive%\ProgramData goto wrong_os
  6. if not %localappdata%==%systemdrive%\Users\%username%\AppData\Local goto wrong_os
  7. if not %appdata%==%systemdrive%\Users\%username%\AppData\Roaming goto wrong_os
  8. if not exist %windir%\system32\themeservice.dll goto wrong_os
  9. if not exist %windir%\system32\themeui.dll goto wrong_os

  10. set rkey="HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Power"
  11. set rskey="AwayModeEnabled"
  12. set dtype="REG_DWORD"
  13. set selection=0

  14. :main_menu
  15. echo ===============================================================================
  16. echo ==Away Mode Enabler - 整天掛機也超省電!! by h999342@gmail.com
  17. echo ===============================================================================
  18. echo ==想電腦開著抓整晚的BT,但是現在的電腦功率消耗都很大,開一個晚上想必要暴增不少
  19. echo ==電費,要如何既能安心抓檔又能省電呢?
  20. echo ==從Windows XP MCE 2005新增了「離開模式」的功能,即使進入離開模式,也能繼續幫你
  21. echo ==執行抓檔程式,這可是休眠功能辦不到的喔,
  22. echo ==在Windows Vista和Windows 7中因為有內建,只要使用本程式即可開啟
  23. echo ===============================================================================
  24. echo ==歡迎轉貼,但請保留原載點!
  25. echo ===============================================================================
  26. echo ==1. 啟用Away Mode
  27. echo ==2. 停用Away Mode
  28. echo ==3. 前往Microsoft網站,閱讀Away Mode相關資訊
  29. echo ===============================================================================
  30. set /p selection=請選擇:
  31. if %selection%==1 goto enable
  32. if %selection%==2 goto disable
  33. if %selection%==3 goto offsite
  34. goto main_menu

  35. :enable
  36. reg add %rkey% /v %rskey% /t %dtype% /d 1 /f
  37. cls
  38. reg query %rkey% /v %rskey%
  39. echo 如果上面顯示0x1即表示啟用成功,請使用"開始"→"》"→"睡眠"即可進入Away Mode
  40. pause>nul
  41. exit

  42. :disable
  43. reg add %rkey% /v %rskey% /t %dtype% /d 0 /f
  44. cls
  45. reg query %rkey% /v %rskey%
  46. echo 如上面顯示0x0即表示停用成功
  47. pause>nul
  48. exit

  49. :offsite
  50. start http://www.microsoft.com/whdc/system/pnppwr/powermgmt/awaymode.mspx
  51. goto main_menu

  52. :wrong_os
  53. rem cls
  54. echo 系統檢查不通過, 疑似並非Vista, 7, 如有問題, 請聯絡作者...
  55. pause&exit
複製代碼
附件: 您所在的用戶組無法下載或查看附件

本帖最近評分記錄(2)
  •   a1991105409GP + 1 請問一下.. 如果有腳本執行 用省電模式他 ...
  •   Kelp金幣 + 7 枚感謝分享
@a19911054
問一下.. 如果有腳本執行 用省電模式他 ...   GP + 1
如果是自動移動滑鼠、鍵盤那種應該是沒用吧
因為恢復時有點像是按Windows+L那種感覺
會跑到登入畫面
返回列表