WindowsCE小技集

このページではWindowsCE(含むPocket PC)を活用する上で便利…かも知れない(^^; ちょっとした小技を紹介して行く予定です。

# 小技というからには本当にくだらない物が多いので過度の期待は禁物です(苦笑)

以前似たようなコンセプトのページとして『WindowsCEの無駄知識』というコーナがありましたが,あちらはややマニアック(?)な内容を長文で解説していたのに対してこちらは実用面のみに的をしぼってあくまでも簡潔に紹介することを目標にしています。

記事の性格上特定のアプリケーションに依存したネタなども頻出することになりますがご容赦ください。

# このサイトのいたるところに散らばっている小技を集約するという目的もあるので,今後ネタ的に重複している部分が大いに出てくる予定です。

ちなみに私ひとりの知識ではすぐにネタ切れを起こすことが予想されますから『こんな面白い小技があるよ』とか『こうした方が便利じゃないの』というような情報やアイディアをお持ちの方はこちらの掲示板にお気軽に情報をお寄せください。

掲載されても粗品などは差し上げられませんが(苦笑) お名前(ハンドル名)は掲載させていただきます(^^;


受信トレイの便利(?)な使い方

ご存じの通り受信トレイはOutlookとメールの受信フォルダを同期出来ます。
が同期できるのはこの『受信フォルダ』のみでその子フォルダなどは同期してくれません。

他にもチョロチョロと細かい制限があるので使っていない人も多いのではないでしょうか。
そこでこの受信トレイを無理やり活用する小技。

まず無料でも何でも良いのでpopメールが使えるメールアカウントを1つ用意します。
次に常用している全てのメールアカウントから上記アカウントへ転送をかけます。
ちなみに転送する時は必ず元のサーバにメールを残す設定にしましょう。

# 転送をサポートしていないプロバイダなどを利用している方は諦めてください(苦笑)

でこの専用に用意したアカウントを毎朝出掛けに母艦のOutlookで受信(受信後はサーバから消去)後同期します。
後は電車の中でメールを読み捨て(読後削除)てしまいましょう。

メールに対する返信やCE機側のローカルに保存したい情報はPocket WZ MailやQMAIL,nPOPなどの別のメーラで常用しているアカウントから選択受信をしましょう。

Pocket WZ Memoの簡単同期

Pocket WZ EditorのMemo機能は中々に手軽かつ便利な機能ですから使っている方もいらっしゃるでしょう。
これを母艦と簡単に同期する方法です。

とは言えこれはマニュアルにもちゃんと載っている訳なんですが(苦笑)

Pocket WZ Memoの保存ファイルは母艦用WZ,PWZ共に拡張子が異なるだけで書式は共通です。
でさらにWZ,PWZのインストールフォルダにある『WZMEMO.CFG』の末尾でファイル名をフルパスで指定することができる様になっています。

そこで保存ファイルを同期フォルダに移動して,それをフルパス指定してやれば良い訳ですね。
次からは常に自動的に同期されるようになる訳です。

ただし,母艦とCE機を同期させる前にそれぞれの側で更新してしまうとどちらかの更新内容が失われることになりますから,この点には十分に注意が必要ですね(^^;

ちなみにcfgの書式はこんな↓感じです。無論パス名は自分の環境に合わせて変更が必要です。
『file:d:\My Documents\WinCE My Documents\Data\Wzmemo.mem』

Pocket WZ Mailのごみ箱を利用した同期

今更書くまでもなくご存じでしょうが,Pocket WZ Mailと母艦用WZ Mailのメールボックスのファイル構成は全く共通となっています。

そこでメールボックスをCFに置いて,CEと母艦で抜き差ししながら共有したり,任意に上書きコピーをすることなどで簡単に同期を図ることが出来ます。

メールボックス自体を同期フォルダ配下に作ってしまうという手も有るでしょう。

しかし,メールボックスのサイズによってはそうした手段で同期を図ることが難しいケースも往々にしてありえます。
データベースとして利用する場合はともかく,任意に数通のメールのみ同期出来れば良いという場合もあるでしょう。

そんな場合はメーラ上でごみ箱など空のフォルダ(新規にフォルダを作ってしまうのも良いでしょう)に同期させたいメールをコピーしてください。
その後メーラを終了し,ファイラで目的メールボックス…ごみ箱の場合は『任意のメールフォルダ\internet\任意のアカウント名\ごみ箱.mbx』を探して,移動先に上書きコピーします。

このままだとキャッシュ(インデックス)ファイルがジャマをするので同じフォルダにある『ごみ箱.idx』を削除します。

で移動先のメーラを立ち上げごみ箱から受信トレイなり何なり任意のフォルダにメールを移動させれば同期は完了です。

スタートメニュー登録項目の並べ替え

Windows95時代の懐かしのテクニック。

スタートメニューは『\Windows\スタート メニュー(半角カナ)内のショートカットおよび実行(EXE)ファイルを昇順で自動的にソートして表示しています。
これを利用することでスタートメニューの登録内容を任意の順番に並べ替えるテクニック。

方法は簡単,ショートカットのファイル名を変更して頭に数字を振ってやる(ナンバリング)だけでOK。

一番上のプログラムだけ指定したい場合は,記号は数字より前になることを利用して『_ 』アンダースコアを利用すると便利でしょう。

10個以上ナンバリングする際は桁数調整も忘れずに!『1』→『01』

ちなみにスタートメニューの他,フリーのランチャソフトProgramMenuなどにも応用可能です。

スタートメニュー登録項目の一時的なマスキング

スタートメニューの登録項目を一時的に登録解除したい時に便利なテクニック。

スタートメニューは隠し属性のかかったファイルを読み込まない仕様になっています。

そこでこれを利用して目的にファイルに『隠し属性』をかけてやることで,スタートメニューへの登録を一時的に解除することが出来ます。

なお,この小技はスタートメニューの他,フリーのランチャソフトProgramMenuなどにも応用可能です。

Pocket PCのスタートメニュー履歴の拡張

Pocket PCではスタートメニュー上部に実行したプログラムの履歴を表示する機能があり,簡易タスクスイッチャとして使用することが出来ます。

この履歴は初期状態では『5個』ですがこれを『8個』まで拡張することが出来ます。

方法は簡単。この履歴アイコンは『スタートメニューの幅』に依存しており,そのスタートメニューの幅は『登録プログラムのファイル名の長さ』によって決定されています。

したがって『\Windows\スタート メニュー(半角カナ)』直下の登録プログラムのファイル名をどれでもいいので全角スペースなどを利用して長くしてやれば拡張することが出来ます。

ちなみに上限値は8個なので,それ以上長くしても意味はありません。

この件に関する詳細は未整理雑文集+モバイル小細工さんの『モバイル小細工』を参照してください。

またWindowsMediaのショートカット名を変更してしまうとE-700のリモコンイヤフォンユーティリティでエラーになるので注意が必要です。詳しくはこちら

余談ですが,スタートメニューに登録されていないプログラムは履歴に入らない仕様になっています。

スタートメニューの整理に関する注意事項

スタートメニューは『\Windows\スタート メニュー(半角カナ)』のショートカットおよび実行(EXE)ファイルを表示している訳ですが,ここにフォルダを作ることで浅い階層でプログラムを整理することが出来ます。

Pocket PCではスタートメニューのプログラムフォルダと異なり,ユーザの作成したフォルダ類はスタートメニューの一番上に配置されます。

またこの階層のフォルダに登録したプログラムは,E-50xやE-x6,E-700のボタン設定でハードウェアキーに割り当てることが出来ないので注意しましょう。

なお,Pocket PCではこの階層のフォルダはOS本体と密接な関係にあるため,一端開くと『任意に閉じることが出来ない』のでタスクマネージャと組み合わせて使用した場合の使い勝手が却って悪くなる可能性があります。

メモリ カード(半角カナ)をStorage Cardに変更する

CE2.11以降の日本語版はCompactFlashCardやSDMemoryCardの認識名が『メモリ カード』という日本語,しかも最悪なことに『半角カタカナ』にローカライズされてしまいました。

おかげでそれまで普通に使えていた英語版ソフトが使えなくなるといった問題が生じました。

それを回避するために編み出されたテクニックがこれです。

レジストリエディタを使って…

E-700なら[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\MMC]
それ以外の機種なら[HKEY_LOCAL_MACHINE\Drivers\PCMCIA\ATADisk]

配下に『Folder』というキー(文字列)を新たに作り,値を『Storage Card』に設定します。

ちなみにH/PC Proの2スロット目を変更したい場合は同様に『Folder2』というキーを作って設定します。

なおこの変更によって問題が生じるケースもありますから使用には十分注意しましょう。関連記事はこちら

WindowsMediaPlayerのバックグラウンド時の挙動を変更する

Ps/PC版とPocket PC版で確認しましたが,WindowsMediaPlayerはデフォルトではバックグラウンドに回った時に自動的に再生品質を落とす設定になっています。

確かに高付加のかかる作業をする場合にはありがたい仕様なのですが,アプリを切り換える度に演奏が一瞬ストップしてしまうため決して気持ちのいいものではありません。

この設定は例によってレジストリに該当するキーがあるのでここを書き換えてやりましょう。

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Media Pl ayer\Parameters]

配下に『Background』という名前のDWORD値を作 り数値に2を指定します。

ちなみに0は停止で1はデフォルトと同じ再生品質Downになります。

GreenSoftwareの間さんで公開されているWMPMやWMPCなどから簡単に変更可能です。

WindowsMediaPlayerのデフォルトの再生品質を変更する

E-x5などの比較的非力なマシンでWMPを使った場合,音切れを起こす可能性があります。

そんな時は標準の再生品質を落としてしまいましょう。

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Media Pl ayer\Parameters]

配下の『ForceHalfDecording』を1に変更するとハーフレートをデフォルトに変更されます。

GreenSoftwareの間さんで公開されているWMPMやWMPCなどから簡単に変更可能です。

WindowsMediaPlayerの左右カーソルキーへの機能割りつけ

WMPは何故か左右のカーソルキーへの機能割り付けが出来ません。

が,レジストリエディタを使って新たにボタン定義を作ってやることで機能割り付けが可能になります。

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Media Player\Buttons]

配下に『左ボタン(他のボタンとの表記を揃えるなら半角カナ)』『右ボタン』という名前のDWORD値を作り,それぞれ16進で『0x25』『0x27』と入れてやります。

あとはWMPから通常通りに機能割り付けを行ってやればOKです。

この小技はGreenSoftwareの間のmidori01さんから提供していただきました。
同サイトで公開されているWMPCを使用して簡単に変更可能です。

Pocket PCのスタートメニューの履歴登録を抑制

Pocket PCではスタートメニューに直前に実行したプログラムの履歴が最大8個まで表示され,簡易タスクスイッチャとして利用できるようになっています。

が,E-700の場合海外製ゲームなどファイルサイズの大きいプログラムをSDメモリカードに入れた場合,初回のアイコン読み出しに5秒程度かかるためリセット直後のスタートメニューの展開速度に悪影響が出ます。

スタートメニューの履歴には『\Windows\スタート メニュー(半角カナ)』の下に置いたファイル…つまりはスタートメニューに登録されたファイルしか登録されません。

そこでこれを逆手に取って,スタートメニュー以外のランチャソフトにプログラム本体,あるいはスタートメニュー以外の場所においたショートカットを登録してやることで履歴に入ることを抑制出来ます。

またPocket PCはカスケードメニューの採用をやめたため,挙動としてはCASIOのMenuソフトと同じような動作になっていますから,スタートメニュー直下にMenuソフトを登録しても比較的違和感無く使用することが可能です。

# 無論CASIO製Menuソフトを使っても,アイコンの読み込み速度自体は改善されません。

# ただしこのソフトの場合登録の際アイコンの変更ができるので,これを利用することで擬似的に回避することは出来ます。

レジストリエディタを隠す

WindowsCEはWindowsの端くれだけあって突っ込んだ活用にはレジストリエディタが欠かせません。

が,レジストリエディタを使うとシェアウェアのレジストレーションコードなどを第三者に簡単に閲覧されたり,内容を書き換えられる恐れがあります。

そのために電源投入時にOS自身のパスワードロック機能がある訳ですが,面倒なので使っていないという人も結構いるのでは?
そんな時はせめてレジストリエディタの実行ファイル(とショートカット)に不可視属性をかけておきましょう。

不可視属性をかけたファイルはスタートメニューからも消えますし,エクスプローラ(やその他ファイラ)でも設定によってはみることが出来なくなりますから,『少しだけ時間が稼げるかも』知れません(苦笑)

不可視属性をかけた後,他のプログラムなどとは全く関係のないフォルダ(テンプレートフォルダとか…)に入れておくとさらに効果的…かも。

Pocket PCのToday画面に任意の画像を表示する

Pocket PCではデスクトップ画面が廃止され代わりにToday画面(Ps/PCなどのアクティブデスクトップに相当)が設けられました。
このおかげで任意の壁紙を利用することが出来なくなってしまいました。

ここに好みの画像を張り付けるためのオンラインソフトしては『Today Screen Image Tool 』『GSTPicture』などがあります。

これらを利用するのが最もスマートな方法ですが,こうしたソフトを使いたくない場合、Windowsフォルダの『tdybnr.gif』に任意のgif画像を上書きしてやることで『Today タイトル バー』の画像を変更することが可能です。

コントロールパネルの項目をランチャに登録する

コントロールパネル(設定)にある各項目はEXEファイルを直接実行するだけでは起動出来ないため,ランチャなどにそのまま割り当てることは出来ません。

それを割り当てるための小技。

Pocket PCでは,Windowsフォルダにあるctlpnl.exeにフルパスでcplmain.cplと対応するID(カンマ区切り)を引数として与えて登録すればOK。

ID等に関する詳細は@midnightさんの『WindowsCE』→『My WindowsCE』を参照してください。

上記ページではPocket PC用だけでなく,Ps/PC用の対応表も公開されています。

ハードウェアボタンにプログラムを引数付きで登録するには

CASSIOPEIA Eシリーズのハードウェアボタンは設定→ボタンから設定すると引数付きのショートカットが上手く起動出来ません。

それを回避するための小技です。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shell\Keys]

配下にそれぞれのボタンに対応するキーがあるので,これを直接書き換えることで引数付きで登録することが出来ます。

詳細はFinal β Laboratoryさんの『勝手気ままにPocket PC』→『ちょっと したTips』を参照してください。

なおこの小技を使うことでスタートメニューに登録することなく,ボタンにプログラムを割りつけ可能です。
また同キーはAシリーズのFuncキーやJornada6x0のホットキーでも使われており,同様に編集することが出来ます。

Pocket PC用PocketInternetExplorerでClearTypeTextを有効にするには

Pocket PC用のPIE(厳密にはHTML Viewer controlを使用したアプリケーション)で英語版のBookReaderなどで利用されている『ClearTypeText』(文字にアンチエイリアスをかけて擬似的に解像度を上げる)技術を有効にして細かい文字を読みやすく(?)する小技。

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]

配下にDWORD値『ClearTypeText』を作り,値を1にします。

ちなみに0はデフォルトの無効状態。

なお変更後のリセットは不要です。

# 個人的には文字形状の複雑な日本語にはあまり有効ではないような気がしないでもないですね(線の細い文字だと線が飛びます)。

Pocket PCでファイル名を指定して実行

Pocket PCには隠しで『ファイル名を指定して実行』機能があります。

方法は簡単。アクションコントロールを押したままで画面右上(タイトルバー)にある時計をタップアンドホールドすると『ファイル名を指定して実行』と『時計』というメニューがポップアップするので前者をタップして指定します。

指定はフルパスで行い,パス名に空白が含まれる場合は全体をダブルクオーテーション『"』で括る必要が有ります。
当然ですが,ルートフォルダとWindowsフォルダ(サーチパスに含まれるフォルダ)のファイルはファイル名のみを指定してもOKです。

CASSIOPEIA l'agendaレジストリ小技集 関連記事

ラジェンダデフォルトのボタン設定やトップメニューも中々使い勝手がいいのですが,Pocket PCやPs/PCを使っていた人なら,お気に入りソフトと入れ換えたいなんて思うはず。 そんな時便利な小技。

メニューボタンに任意のアプリを割り付ける

[HKEY_LOCAL_MACHINE\SOFTWARE\CASIO\COShell\HardIcon\07]
配下『File』に任意のアプリケーションをフルパスで記述。

アイコンメニュー(ハードアイコン)に任意のアプリを割りつける

上と同じく [HKEY_LOCAL_MACHINE\SOFTWARE\CASIO\COShell\HardIcon]
の00〜06までがハードアイコンの設定なので,それぞれエントリ下にある『File』に任意のアプリケーションをフルパスで記述。

メニューソフトを変更する(未検証)

[HKEY_LOCAL_MACHINE\SOFTWARE\CASIO\COShell\MainMenu]
配下『File』に任意のアプリケーションをフルパスで記述。

※ かなり危険だと思われるのでバックアップは万全に(^^;

スタートアップ登録

[HKEY_LOCAL_MACHINE\SOFTWARE\CASIO\COShell\Startup]
配下に適当な名前でキーを作り,上記と同じく『File』というエントリ(文字列)を作って,ファイルをフルパスで記述します。
常駐モノの場合『\Nand Disk\Program Files』あたりに入れるのが適当でしょう。
この場合はサーチパスが通っているのでフルパスで記述する必要はありません。

# 上記4件の登録ソフトに対する起動オプションは,Filesと同じ階層に『Args』というエントリ(文字列)を作って指定することが可能。

トップメニュー本体タブ登録

[HKEY_LOCAL_MACHINE\SOFTWARE\MENU]
配下に適当な名前でキーを作り以下のキーを作成します。

  • APPNO(DOWRD値) アイコンメニューの何番目に配置されているかを『0から数えた』もの(=2番目なら1)を16進数で入力。
  • ULOAD(DOWRD値) アンインストールが出来るか出来ないかの設定。1なら可。 0なら不可。 0がお勧め。
  • ULOADFILE(文字列) アンインストール時に利用するinfファイルの指定。 手動インストールしたなら空白でOK。
  • ACMND(文字列) 未検証。 起動パラメータ? 通常空白。
  • APATH(文字列) 起動したいアプリケーションをフルパスで記述。
  • ANAME(文字列) 登録名称。 適当に付けてOK。

そして最後に上記[HKEY_LOCAL_MACHINE\SOFTWARE\MENU]のDWORD値『ROMNO』にトップメニューの『本体タブに登録されたアプリ数−1』の値(16進数)を入力して設定完了。

※ l'agendaは(Ps/PC版の)レジストリエディタでレジストリを書き換えても,FlashROM側には反映されず,リセット後設定が無効になる場合があるようです。 これを回避するために,明示的にFlashROM側のレジストリを上書きする必要がある模様。 トップメニューの本体側タブでアプリケーションの並び順を変更したり,設定から配色を変更するのが簡単です。

# 上記操作はレジストリに設定値を保存するタイプのPs/PC版ソフトを利用する際にも有効でしょう。

l'agendaにPs/PC(H/PC)用のアプリを導入する 関連記事

l'agendaはPs/PC(H/PC)用のアプリケーションの多くを利用することが可能ですが,導入に際してはいくつかのテクニックが必要になります。

アプリケーションの導入場所について
l'agendaは独自の仕様により,アプリケーションを導入できる場所に制限があります。
本体メモリに入れる場合は『\Nand Disk\Program Files』に導入します。
ただし,この場合トップメニューには登録されないため,こちらの記事を参考にレジストリ操作を行う必要があります。

従って,通常はCF(ストレージカード)側に導入することをお勧めします。
この場合『\Storage Card\Program Files』(一階層下まで可)に導入することで,トップメニューのカードタブ側に自動検出されるため便利です。

cabファイルで配布されているアプリを導入する
Ps/PC用アプリにはCE機上で動作するインストーラを利用する『cab形式』で配布されているものが存在します。
これを導入するには,まつもさんのサイト『まつものページ』の掲示板上で配布されている『cab_renamer.exe』を利用する必要があります。

母艦上でcab_renamer.exeに目的のcabファイルをドラッグ&ドロップすることで,cabファイルから必要なファイルを取り出すことができます。
cab_renamer.exeの入手に関しては,上記まつもさんのサイトの『ポポペといっしょ』→『ご意見掲示板』のページ下端にある検索ボックスで『cab_renamer.exe』(『』は不要)をキーワードにして検索してみてください。

# なお,本情報は当サイト掲示板上にてサイサイさんよりご提供いただきました。

インストーラ(主にInstallShield)付きで配布されているアプリを導入する
Ps/PC用アプリには,母艦上でインストーラが起動しActiveSync経由でインストールを行うタイプもあります。
この場合,ActiveSyncが入った母艦でインストーラを実行し,作業フォルダに一時的に保存されるcabファイルを抜き出した上で上記cab形式のものと同じ手順で導入を行ってください。

# インストーラ起動中に探さないと,自動削除される場合もあります。

cabファイルが保存されるのは大抵ActiveSyncのインストールフォルダか,Windowsの作業フォルダです。

# デフォルトなら『\Program Files\Microsoft ActiveSync』か『\Windows\Temp』。 Win2kなら『C:\Documents and Settings\ユーザ名\Local Settings\Temp』の辺りでしょうか。

起動エラーダイアログが出るアプリケーションを利用する
l'agendaが対応していないAPIを呼び出しているアプリケーションを実行した場合,『起動エラーダイアログ』が表示されて実行できない場合があります。

この場合,Qtaさんのサイト『MONO-Q』で公開されているダミーDLL(CEShell.dll / Aygshell.dll)を導入することで,利用できる『可能性』があります。
なお,ダミーDLLは本体メモリ上で利用する場合は『\Nand Disk\Program Files』直下に,CF上で利用するなら,本DLLを利用するアプリケーションのインストールフォルダにそれぞれ導入してください。

# 当然ですが,本DLLの利用は無保証です。 Qtaさんや元アプリの制作者の方へのご質問は絶対にお止めください。

Pocket WZ EDITORなどがこのタイプに分類されます。 PWZの導入方法についてはmunaさんのサイト『未整理雑文集+モバイル小細工』の【CASSIOPEIA l'agenda BE-500 インプレッション】「(4') PWZ 2.07 セットアップ方法」が参考になるでしょう。

PWZ EDITORで簡単メール成形

Pocket WZ EDITORはもともとメール成形に便利な『自動成形モード』を備えています。
ただ,Pocket PCやPs/PCの場合桁数が80桁に満たないため,本モードを利用していると改行結果が階段状に並ぶことになり,一覧性や操作性が著しく低下してしまいます。 そんな時に便利な小技。

自動成形をオフにした状態でメールを作成し,[編集]→[すべて選択],[編集]→[変換...]から『テキストの変換』→『改行付きテキスト』を利用することで改行を一括挿入できます。

これを利用することで,変な位置に改行が入ってしまうことも未然に防げるので,意外と重宝するのではないでしょうか。