2025 01,22 12:00 |
|
× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 |
|
2006 06,04 21:35 |
|
TodayTime V1.0のキットを作りました。興味のある方は動かしてみてください。アイコンを自分で書いたものに取替えましたが、ダサッ! Install前に必ずreadme.txtのアンインストールの仕方を読んでおいて下さい。 お行儀良く?動いてくれてるようです。でもハードリセットへの備えはいつでも重要です。Backup取ってからのインストールをお勧めしておきます。 TodayTime V1.0 for Pocket PC2002 (Yet Another Today Time) いつものお約束です。 本ソフトを使用して生じるいかなる損害に対しても一切責任を負いません。 PR |
|
2006 06,01 23:10 |
|
元号をPocket PCでは取り出せないと何故か信じていて、Registryに設定した”平成”というStringをRegQueryValueExで取り出していました。英語版PC2003にしたH3950の日本語化の際、Regional SettingのCalender TypeのPull Down MenuでScrollさせると和暦が設定出来ることに気付きました。きっとみんな知っている事なんでしょうね。。。H36XXがでた直後からPDAを使っている割に知らない事が沢山あります。
どうでも良いことですが 日本語版 PC2002(H3660) 英語版 PC2003 (H3950) 日本語版 PC2003SE (hx4700)の日付設定画面では 1950年1月1日までが設定できました。(昭和25年です) 話を戻して、元号の取り出しはGetCalenderInfoを使うように思うのですが Embedded VC++3.0 のHelpに To get the date format for a particular calendar, use GetCalendarInfo. の記述があるのですが、winnls.h も含めPrototype宣言がありません。コーディングしてもUnknownでエラーになります。ちなみにEmbedded VC++4.0も同様にPrototype宣言がありませんでした。 今回EnumCalenderInfoを使ってテスト用に書いてみるとうまくいったのでTodayTimeに組み込みました。平成、昭和、大正、明治というStringが取れます。1950年しか日付設定出来ないのに大正、明治が要るのでしょうかね?Contact Listの生年月日でしょうか。。。 あまりきれいなコードではありませんが、Internet上でサンプルコードを見つけられなかったので、もっと良い方法があるかもしれませんが貼り付けておきます。 |
|
2006 05,10 23:58 |
|
最初はSample Codeをコピペしながら、APIの使い方やどういう理由でそのお約束が必要か覚えて来たのです。だんだんつぎはぎコードに重複や、誤った使い方がわかり始めたため、全面書き直しをしてみました。スケルトンを最初に書き、各Window Messageごとの処理を清書?リファイン?して動作を確認してみました。SPYを使ってメッセージの流れとか見ていた時、もう一度SetTimerを自分のWindowに設定してみようと思い立ち。。。なんと動くではありませんか。きっと何か間違えていたんだ。。。orz。前のエントリに修正を入れておきます。
|
|
2006 05,06 22:45 |
|
多分きちんと表示出来るようになったと思っています。結構Date Time 書式指定解析のコードはうまく書けて自己満足ですがニコニコしています。 深く追求していませんが、Wisbar2(2.6.0.2)を動かすと、DialogでGlobal変数に設定した値が、Today Item本体で参照しても反映されませんでした。PC2002でWisbar2は使わない方が良いかもしれません。この原因を見つけるのに2日程潰してしまいました。 DLLmainを書くことで、Today Item表示前にオプションを選択してもmallocを呼んで必要な作業領域を確保したり、freeがきちんと出来たりしました。MSDNのサンプルより、開発ツールに含まれるサンプルが役立ちました。 Default設定では"2006年5月6日 (土) 午後 22:11"という表示になりますが、書式指定が出来るようにしました。残念ながらggを指定した場合の元号については、GetLocaleInfoでは取り出せないようでしたので?リソースにシンボルとして与えてています。'月'、'日'、'曜日'、'午前/午後'についてはLocaleを指定して取り出せました。画面のように書式で直接指定も出来ます。 ただ残念なことにEDIT Boxに日本語が入力できません。Today ItemのDialogの中で使うEDIT Boxでは日本語が無視されます。ローマ字入力してもアルファベットのままでした。 Today Item のDialogではなく普通のアプリを書くと、ImmSetOpenStatusだなんだとか指定しないでも、標準で日本語入力が出来ます。 Today Item のDialogではImmSetOpenStatusしようが、EDIT Boxの標準のWindowProcを置き換えようが、何をしても入力出来ませんでした。 PC2003SEのhx4700にインストールすると何事も無く、そのまま日本語入力できます。PC2002のToday ItemのDialogのEDIT Boxでは特別な呪文が必要なのかもしれません。 10日間くらいデバッグしたり、テストプログラムを書いたりしていたのですが、PC2003SEでなにもしないでも入力出来たのを見て脱力感です。 Todayの画面でTodayTimeをタップした時起動するコマンドを指定します。EDIT BoxにFocusが移るとSIPが上がってきます。 5月の連休を全部このDebugで使って大満足。でも家庭的には"いつもの"、でもとっても面倒な事?も発生したので、これくらいにしておこうかと。。。 |
|
2006 04,28 01:28 |
|
帰宅するとH3660用のバッテリが届いていたので、食事もそこそこに取替え作業実施。6角ドライバーで分解、取り換えを実施。
あれ?????動きません。念のためしばらくクレドールに挿してみますが、抜くとやはりハードリセット後状態。バッテリが効いていないなあ。思い起こすと、前日まで元気に動いていたのが、急に駄目になったわけで、バッテリ交換で直らないと言うことは。。。。 またばらしてみて、プリント板上でこげた部品とか、ちぎれた線とか目を凝らして探してみると。。。 F1と基板上に刻印があって、部品にはFOとマーキングされている透明な樹脂でできた部品がバッテリ・コネクタの横に見つけました。 'F'っちゅうことはヒューズかな?ヒューズが切れるとこんな感じだよね。。。 テスターを引っ張り出してきて導通を確認してもありません。ダイオードだったりするといけないので、逆にあたってみてもやはり導通がありません。透明な樹脂の中に横一本ヒューズっぽいラインが見えていますが、切れている様子も、焦げている風でもありません。 ここであきらめると、H3660は持ち運べないPocketPCになります。 いいっか!壊しても。。。と言うことで、半田ごてを引っ張り出してきて、透明樹脂で出来た”多分ヒューズ”を取り外し、撚り線をほぐし細い線を一本だけ使い、透明な樹脂部品がブリッジしていた2点間を半田付け。 あっけないほど簡単に動きました。多分前のバッテリの異常か何かで過電流が流れてヒューズが切れたのでしょう。 次に同様の異常が起きた場合、最悪リチウム・イオン電池が発火したりする危険性がありますから、日本橋に行って1Aくらいの基盤実装タイプのヒューズを探してくることにしましょう。電池本体に温度ヒューズと、過電流ヒューズが実装してあるようなので、めったな事は起こらないと思いますが、クレドールに挿して充電したままの外出はしない事にしました。 今日はこれくらいにしとったるわ! |
|
忍者ブログ [PR] |