ページ

2007-10-08

Today画面からの発着信履歴表示

wifictrl等々でお世話になっている W-ZERO3 Holic様で Today画面での挙動についての興味深い記事がありました。  
最後にはアドエスでの情報提供の呼びかけがあります。
めずらしく人の役に立てるチャンス(笑
 
早速、リモート スパイでメッセージを覗いてみました。
(発信履歴を出した時の様子です)
 
結果、発信履歴、着信履歴ともに WM_USER + 258のメッセージが飛んでいます。
wParamは発信履歴が10000h(65535)、着信履歴が 0。lParamは両方とも 0でした。
 
ガセ情報を送って迷惑をかけると大変なので、一応コードを書いて動作確認しておきます。
case BUTTON_INCOMING:
    // 着信履歴
    hDenwa = FindWindow(_T("AfxFrameOrView80su"), _T("電話 "));
    if (hDenwa) {
        SendMessage(hDenwa, WM_USER + 258, 0, 0);
    }
    break;

case BUTTON_OUTGOING:
    // 発信履歴
    hDenwa = FindWindow(_T("AfxFrameOrView80su"), _T("電話 "));
    if (hDenwa) {
        SendMessage(hDenwa, WM_USER + 258, 65536, 0);
    }
    break;
 
ウィンドウに適当に置いたボタンをクリックすると、着信履歴・発信履歴を表示することができました。
これなら大丈夫そうですね。
 
ちなみにカーソルの左右同様、テンキーを押した時も同じメッセージが飛んでいました。
lParamは全て 0で、 wParamは 1~9が 10001h, 20001h, ... 90001hと続いて *が A0001h, 0が B0001h, #が C0001hです。
 
何か面白いことができるといいですね。
 

2007-10-07

Pocket PCのサービス

MSDNを漁っていると Pocket PCでサービスを作成する方法が紹介されていました。  
ただWindows Mobile 2003の頃の古い記事で、今では関数の型が微妙に変更されているみたいです。  
サービスならサスペンド中でも動けるかと思って試しにプログラムを作ろうとしたのですが、 作ったサービスの利用方法がよくわかりませんでした。
 
サンプルは CE 5.0のPlatform Builderに含まれているみたいなのですが、入手できるのかどうかもわかりません。
サンプルがインストールされているフォルダを書くんじゃなくて、MSDNで参照可能にして欲しいですよね。
 
とは言いながら、NSDNには順を追って説明してくれているドキュメントもありました。
 
これから睡魔と闘いながら読んでみます。
 

2007-10-06

PC新調

2週間ほど前に約6年間使っていた自宅用のPCが壊れてしましました。
 
借り物のPCがあるとはいえ いろいろ不便な思いをしていたのですが、昨日 ようやく新しいPCが届きました。
 
新しいPCは富士通のBIBLO MG75XNです。
地上波デジタルも来ていない田舎に住んでいるので、直販サイトでワンセグユニットを省いて安くあげました。
 
思えば就職して一番最初に買ったのも富士通のパソコンでした。
そしてその時に持っていたのは DDIポケットのPHS...。
 
なんだか感慨深いですね。初心に戻って精進したいものです。
 
 
そんな新しいPCですが、開封してすぐに プリインストールの Windows Vista Home Premiumを消して Windows Vista Ultimateをクリーンインストールしました。
ドライバ類を全て添付してくれている富士通は素晴らしいですね。
 
ところがアプリケーションディスクのドライバ類を全て入れたはずなのに 不明なデバイスが 2つ残ってしまいました。
 
激しくニッチな情報ですが、同じ事で悩んでいる人(いるの?)のために一応書いておくと、 1つはインジケータ表示で使用している FUJ02B1、 もう1つは富士通拡張機能ユーティリティで使用している FUJ02E3でした。
 
それぞれデバイスマネージャからアプリケーションディスクのIndiutyフォルダ、Fjextutyフォルダを指定してドライバの更新をすることで認識できます。
 
ちなみにキー配列は Windowsのインストール時に英語配列を選びました。
英語配列を選べるPCとなると限られてくるのですが、 どうせキートップは見ないと思うと日本語配列のモデルを買って英語配列で使うのもアリなのでは無いでしょうか。
何より選択肢が広がりますよね。
 
次にレジストリを追加してCapsキーを Ctrlキーに変更します。
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,1d,00,3a,00,00,00,00,00,00,00,00,00
尚、元のCtrlキーも Ctrlとして利用しています。
 
設定内容はわかりにくいのですが、内容を詳しく説明してくれているページがありました。  
あとは Visual Studioと Windows Mobile SDKを入れてひとまず完了。
続きは連休を使って少しずつ整備していきます。
 

2007-10-05

OOSNotifier公開

先日から作りかけていた電波状態監視アプリが一応動作しているようなので v0.5として W-ZERO3.org Uploaderにアップしておきました。
 
アプリを起動すると電波状態に応じてタスクトレイのアイコンが切り替わります。
また、圏外に移動したとき及び圏内に戻ったときにバイブレーションで通知します。
 
 
外出時 うっかり圏外に移動してしまって連絡が取れなかったということを少しでも減らせる事を期待しています。
バイブレーションにも気付かない場合は諦めましょう(笑
 
 
ただ、デバイスがサスペンドに入るとアプリ自体が動かなくなってしまうので OOSNotifier動作中は自動サスペンドしないようになっています。
 
サスペンドの有無はタスクトレイのアイコンをタップして設定画面を開くことで変更可能できるのですが、 縦画面だとアイコンが表示されていない事があります。
その場合は横画面に切り替えると縦画面に収まってなかったアイコンが表示されるみたいです。
 
本当にこんな仕様なんでしょうか?
 
いろいろ試してみたのですがアイコンを表示する場所を指定する方法はわかりませんでした。
このあたりが v0.5な所以です。