ZERO3のLEDでいろんな色が出せないか nleddrvr.dll ファイルを調べてみた。
nleddrvr.dllファイルは、Windows Mobile のWindowsフォルダにあるLEDを制御するファイルと思われる。
新しい色を出すことはできなかったが、充電LEDをオレンジ(充電中時)や黄色(満充電時)に光らせるイベントが見つかった。
イベントらしいものをリストアップしてみた。
・電波LEDオン/オフ
PhoneLibLEDOn/PhoneLibLEDOff
・無線LANLEDオン/オフ
LedDrvOffEventWLAN/LedDrvOnEventWLAN
・メール未読?LED(青)オン/オフ
LedDrvOnEventNotRead/LedDrvOffEventNotRead
・不在着信?LED(青)オン/オフ
LedDrvOnEventNotAnswer/LedDrvOffEventNotAnswer
・点滅パターンオン/オフ
LedDrvOnEventIncoming0~4/LedDrvOffEventIncoming0~4
・LED(青)点滅/オフ
LedDrvOnEventIncoming/LedDrvOffEventIncoming
・バイブ制御
LedDrvOffEventVib0~4
LedDrvContinueEventVib0~4
LedDrvContinueEventVib
LedDrvOnEventVib/LedDrvOffEventVib
・ネット接続?(LED変化の確認できず)
LedDrvPPPEndEvent
LedDrvPPPOffEvent
LedDrvPPPOnEvent
・充電LED黄オン
LedDrvOff2EventCharge
・充電LED黄点滅/オフ
LedDrvOnEventNotification/LedDrvOffEventNotification
・充電LED橙オン/オフ
LedDrvOnEventCharge/LedDrvOffEventCharge
LedDrvOff2EventChargeとLedDrvOnEventChargeを使うと、微妙に色が混ざった感じになる。
・充電LED橙点滅
LedDrvBlinkEventCharge
・レジストリ \HKEY_CURRENT_USER\ControlPanel\Utility とセットで使う?
ChgOnTime/ChgOffTime
RFIndicator
電波状態ランプ切り替え(tDiary::mozurinさん)
http://dislife.com/?date=20061009
RFIndicatorの使い方が記載されてます。
・レジストリ \HKEY_LOCAL_MACHINE\Drivers\BuiltIn\NLed とセットで使う?
IncData/IncData0~4
IncOnTime/IncOffTime
VibData/VibData0~4
VibOnTime/VibOffTime
VibMute
Grp2LedOn/Grp3LedOn
イベントの使い方はこんな感じ
hEvent = CreateEvent(Nothing, False, False, "イベント名")
SetEvent(hEvent)
CloseHandle(hEvent)
私作成のVB支援ソースでも可能です。
WmSetEventMsg("イベント名")
■ついでにEXPORTS関数名の一覧
Close
Deinit
IOControl
Init
Open
PowerDown
PowerUp
Init → PowerUp or PowerDown → Deinit の順番で使うみたい。LEDが消えたりしたが、使い方は良くわからない。
ファイルの調べ方だが、ROMファイルなのでPCにコピーして調べることができなかったので、GetProcAddressで関数名の代わりに1を指定して先頭のEXPORTS関数のポインタを取得。ポインタの前後のメモリを読み込んでみた。ただ、メモリ上に展開されているデータは実際のファイルとは違うみたい。
今回使ったプログラムもアップしておきます。EXPORT関数が無いファイルは読み込めないので、抽出できるファイルは限定的ですが…。EXEファイルはほぼ不可だと思います。
使い方は、DLLファイルを選択してLOADボタンで抽出。成功した場合、プログラムと同じフォルダに DLLファイル名.Dat というファイルができます。
http://www.ne.jp/asahi/phs/phs/blog/loadrommodule.lzh
【関連情報】
次のツールを使うとROMファイルを完全な形で取得できました。
WM5_Files_Dumper.exe
入手先は他のページでも直リンクを自粛してるみたいなんで自粛(^^;
Googleでウェブ全体から検索すると、英語の掲示板っぽいところにEXEのリンク貼ってました。
実行すると全ROMファイルを吸い上げるのでサイズが膨大です。
次のパッチツールを使うと、microSDに保存してくれるようになるので便利です。
http://blog.tauchi.net/2008/06/rom.html
ROMファイル(tauchi.netさん)