2009-09-30
2009-09-27
そろそろ脱βしたい
文字列リソースの表示部分だけは外部へ押しやることが出来ました。
外部にやったはいいんだけれどもそのファイルが存在しない場合は内部の文字列を使用しよう考えたまでは普通なんですが、普通にやるのも面白くないなぁ、とか考えてしまい出来たのがこれ。
無駄に半角カナ。
アホだ。
Dで直に書いててPostfix文字も着けてないんで素直にUTF-8。
一文字3バイトはあるであろうS-JISより無駄豪華な文字列リテラルです。
外部にやったはいいんだけれどもそのファイルが存在しない場合は内部の文字列を使用しよう考えたまでは普通なんですが、普通にやるのも面白くないなぁ、とか考えてしまい出来たのがこれ。
無駄に半角カナ。
アホだ。
Dで直に書いててPostfix文字も着けてないんで素直にUTF-8。
一文字3バイトはあるであろうS-JISより
2009-09-25
2009-09-23
かーねる☆ぱにっく
β18公開~。
取り敢えずUIをちまちま変更。
Lineパネルを改良して若干使いやすくしたもののグループボックスとの相性がよろしくなくて即値(50%とか)が増えた感じ。
でもまぁ本体設定の見栄えが幾分かマシになったので良しとします、うん。
次期バージョンではドキュメントの記述に重点を置きます(やったー、バグで悩まなくて済む!)。
取り敢えずUIをちまちま変更。
Lineパネルを改良して若干使いやすくしたもののグループボックスとの相性がよろしくなくて即値(50%とか)が増えた感じ。
でもまぁ本体設定の見栄えが幾分かマシになったので良しとします、うん。
次期バージョンではドキュメントの記述に重点を置きます(やったー、バグで悩まなくて済む!)。
2009-09-21
うちのCentOSがkernel panicで死んだ
β17だー。
コマンド型の暫定的な実装が主な更新。
DLLも更新したので今回もパッケージ配布で準備が面倒、そろそろ一括バッチでも作ろうか。
今回実装したコマンド型は入力された文字列を正規表現として扱うのでちょっと使いづらいかも知れないので将来的は通常検索・ワイルドカード・正規表現を切り替えられるようにしたい。
Migemoはあまり心惹かれないので実装する気なし。
次バージョンはUIの強化(整理)なんでパネル辺りを重点的にやるかー…。
そのまえにファイルサーバー直さないと…めんど。
コマンド型の暫定的な実装が主な更新。
DLLも更新したので今回もパッケージ配布で準備が面倒、そろそろ一括バッチでも作ろうか。
今回実装したコマンド型は入力された文字列を正規表現として扱うのでちょっと使いづらいかも知れないので将来的は通常検索・ワイルドカード・正規表現を切り替えられるようにしたい。
Migemoはあまり心惹かれないので実装する気なし。
次バージョンはUIの強化(整理)なんでパネル辺りを重点的にやるかー…。
そのまえにファイルサーバー直さないと…めんど。
2009-09-18
マウスフックが直ったー②
やっとこさ直った。
訂正、多分直った。
こっからの話は「恐らく」になると思うんですが原因はDMD2.030から扱いの変ったグローバル変数、TLS変数のおかげ。
フックってDLLを使用する場合は共有メモリを使用、共有部分をグローバルに置いとくのが王道だと思うんです。
だたD(2.030以降)ではこのグローバル部分がスレッド別に置かれるんで変になっていたっぽい。
__gsharedしたらきちんと動きました。
しんどかったー。
訂正、多分直った。
こっからの話は「恐らく」になると思うんですが原因はDMD2.030から扱いの変ったグローバル変数、TLS変数のおかげ。
フックってDLLを使用する場合は共有メモリを使用、共有部分をグローバルに置いとくのが王道だと思うんです。
だたD(2.030以降)ではこのグローバル部分がスレッド別に置かれるんで変になっていたっぽい。
__gsharedしたらきちんと動きました。
しんどかったー。
2009-09-17
マウスフックがバグってたー
謎が多すぎる。
コマンド型を実装してからマウスフックでネムぃがサヨナラする事象が発生中。
コマンド型で入力補完的なコンボボックスのリスト部分的なものを表示させてからマウスフックを使用すると
Hooker.dllを使用していなければ大丈夫。
非常に意味が分からない。
DDBGで動きを見る感じでは
コマンド型を実装してからマウスフックでネムぃがサヨナラする事象が発生中。
コマンド型で入力補完的なコンボボックスのリスト部分的なものを表示させてからマウスフックを使用すると
Unhandled Exception: EXCEPTION_ACCESS_VIOLATION(0xc0000005) at HOOKER.DLL (0x012b8127) thread(6100)が発生。
Hooker.dllを使用していなければ大丈夫。
非常に意味が分からない。
DDBGで動きを見る感じでは
- ネムぃ起動
- 起動の最後にHooker.dllがロードされる
No symbols available from HOOKER.DLL
HOOKER.DLL loaded at 0x012b0000 - コマンド入力ウィンドウを表示
- 何か入力するとリストが表示され以下がロードされる
No symbols available from IMJPSQM.dll
IMJPSQM.dll loaded at 0x3ac70000
No symbols available from IMJPCD.DIC
IMJPCD.DIC loaded at 0x3ae00000 - ここで分岐。
- ①このままリストからアイテムを選択して実行すると以下がロードされて何事も無く動く。
No symbols available from NETAPI32.dll
NETAPI32.dll loaded at 0x59250000
No symbols available from urlmon.dll
urlmon.dll loaded at 0x442a0000
No symbols available from iertutil.dll
iertutil.dll loaded at 0x40930000
②リストを無視してデスクトップでホイールクリックするとEXCEPTION_ACCESS_VIOLATION
2009-09-16
いやいやいやいや
Access Violationが発生中。
場所がわかんねー。
DDBG使ってもわけわからん。
せめて変数名だけでも分からないもんだろうか。
場所がわかんねー。
DDBG使ってもわけわからん。
Unhandled D Exception (std.contracts.ErrnoException
"C:\dmd\dmd\src\phobos\std\stdio.d(896): (Bad file descriptor)") at KERNEL32.dll (0x7c812afb) thread(2632)
->;us
#1 0x004bd728 in __d_throw@4 () from deh
#2 0x004bd538 in extern (C) int rt.dmain2.main(int, char**) . void runMain(void*) () from dmain2
#3 0x004bd575 in extern (C) int rt.dmain2.main(int, char**) . void runAll(void*) () from dmain2
#4 0x004bd2e8 in _main () from dmain2
#5 0x00521695 in _mainCRTStartup () from constart
#6 0x7c817077 in ?? () from KERNEL32.dll
#0 Access Violation
せめて変数名だけでも分からないもんだろうか。
2009-09-14
2009-09-13
こないだネットワーク難民になった
はてさてβ17に向けてコマンド型ランチャを考え中。
現状の なんとも言い難い実装を使うべきか新たに書き直すべきか。
コマンド型っていうと一行分の入力欄にコマンドを入力して登録ファイル等々を実行するのが普通なんでそれを踏襲すべきか、それとも違った実装で行くか。
どっちかって言うと後者を採用してCUIちっくな実装にしたいんだけど中々決まらない。
とりあえずコード書くのが鬱陶しいなぁ。
現状の なんとも言い難い実装を使うべきか新たに書き直すべきか。
コマンド型っていうと一行分の入力欄にコマンドを入力して登録ファイル等々を実行するのが普通なんでそれを踏襲すべきか、それとも違った実装で行くか。
どっちかって言うと後者を採用してCUIちっくな実装にしたいんだけど中々決まらない。
とりあえずコード書くのが鬱陶しいなぁ。
2009-09-12
DのDLLでかすぎ
β16ぅぅ。
ソースコードの整理が主で特に機能変更等は無し。
マウスフック用のHooker.dllのフック解除時のコードが若干怪しかったんでその部分の修正もあり今回はDLLも配布ということで久々のパッケージ・単独ファイルの公開です。
今後の予定は、
ソースコードの整理が主で特に機能変更等は無し。
マウスフック用のHooker.dllのフック解除時のコードが若干怪しかったんでその部分の修正もあり今回はDLLも配布ということで久々のパッケージ・単独ファイルの公開です。
今後の予定は、
- β17→コマンド型の実装
- β18→設定画面のUIをいじる
- β19→ドキュメントの整備
2009-09-09
電波時計の電池が意外と長持ちでびっくり
ネムぃがバージョンアップした感じです。
ソースがあまりにも汚くなったので次バージョンは機能の追加はせずに整理に重点を置きたいなぁ。
今回の主な変更点はアイテム選択時のコンボボックスやリストボックスに対象アイテムのアイコンを描画するようにしたこと。
今まではアイコン読み込みに掛かる時間等を考えるとあんましやりたくなかったのですが適当にファイルを30個くらい読ませてみたら意外と速く処理できたのでじゃあ実装してみよう、といった感じで進んでいきました。
まぁそのおかげでソースが凄く凄く読み難くなってしまいましたが、、、てか、あれだ、書いてて気付いたけどイメージリストのkill忘れてるわ今回。
他にも色々やったけどアイコン描画がいろんなところに影響しすぎて修正しまくってその過程でなにやったか忘れた。
ソースがあまりにも汚くなったので次バージョンは機能の追加はせずに整理に重点を置きたいなぁ。
今回の主な変更点はアイテム選択時のコンボボックスやリストボックスに対象アイテムのアイコンを描画するようにしたこと。
今まではアイコン読み込みに掛かる時間等を考えるとあんましやりたくなかったのですが適当にファイルを30個くらい読ませてみたら意外と速く処理できたのでじゃあ実装してみよう、といった感じで進んでいきました。
まぁそのおかげでソースが凄く凄く読み難くなってしまいましたが、、、てか、あれだ、書いてて気付いたけどイメージリストのkill忘れてるわ今回。
他にも色々やったけどアイコン描画がいろんなところに影響しすぎて修正しまくってその過程でなにやったか忘れた。
2009-09-06
最近コーラがやたらうまい
DMD2.032のtoで泣いたけどD言語 Part22の839氏も死んでたっぽい。
修正パッチへのリンクもあったのでそれを参考にtoで泣かなくてよくなりました。
ネムぃの設定画面で多用しているアイテム一覧のコントロールをそろそろ綺麗にしようと思いコンボボックス→拡張コンボボックスに変更しようと思いましてコード実装してみたらすごく変。
STANDARDなら大丈夫なんですけどDROPDOWNとかを指定すると途端に動かない。
いや、動いてんだけどリスト部分が表示されない。
あっれ~ってなりながらGoogle大冒険した結果MSDNのUsing ComboBoxEx Controlsにあんましよろしくない文が。
英語わかんないなりに訳してみるとイメージリスト設定後にリサイズできないの?
とりあえずよく分からんけど適当に実装してみた。
以上、同じ問題で誰かが悩まないようにメモ書きです。
←実装した結果。
修正パッチへのリンクもあったのでそれを参考にtoで泣かなくてよくなりました。
ネムぃの設定画面で多用しているアイテム一覧のコントロールをそろそろ綺麗にしようと思いコンボボックス→拡張コンボボックスに変更しようと思いましてコード実装してみたらすごく変。
STANDARDなら大丈夫なんですけどDROPDOWNとかを指定すると途端に動かない。
いや、動いてんだけどリスト部分が表示されない。
あっれ~ってなりながらGoogle大冒険した結果MSDNのUsing ComboBoxEx Controlsにあんましよろしくない文が。
hwnd = CreateWindowEx(0, WC_COMBOBOXEX, NULL,
WS_BORDER | WS_VISIBLE |
WS_CHILD | CBS_DROPDOWN,
// No size yet--resize after setting image list.
0, // Vertical position of Combobox
0, // Horizontal position of Combobox
0, // Sets the width of Combobox
100, // Sets the height of Combobox
g_hwndMain,
NULL,
g_hinst,
NULL);
英語わかんないなりに訳してみるとイメージリスト設定後にリサイズできないの?
とりあえずよく分からんけど適当に実装してみた。
以上、同じ問題で誰かが悩まないようにメモ書きです。
←実装した結果。
2009-09-01
今日は仕事がお休みだー。
あー、β14公開です。
内部的にはstringからネムぃで使用しているTextって型に移行中。
カレキとの兼ね合いでstring使っているところもどうせ外向けにはTextに変換してるんだし最初からTextでいいじゃないかという思惑で作業中。
ある程度変換作業が進み動くようにはなったので公開した感じです。
今回から更新記録をBloggerに移行です。
公開って言っても今回バイナリ配布じゃないしそこまで公開しなきゃいけないってもんでもありませんでしたから。
機能的な変更は環境変数の動作が不完全だったバグを修正したくらい。内部的にはstringからネムぃで使用しているTextって型に移行中。
カレキとの兼ね合いでstring使っているところもどうせ外向けにはTextに変換してるんだし最初からTextでいいじゃないかという思惑で作業中。
ある程度変換作業が進み動くようにはなったので公開した感じです。
今回から更新記録をBloggerに移行です。
登録:
投稿 (Atom)