[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Speak.exe のデバッグ



渡辺@我が家です。

On Sat, 05 Aug 2000 14:02:12 +0900, Hideki Shirafuji wrote:
> デバッグ方法は以下のようにしています。
> (中略)
> 5.VC++ のメニューから
>   ビルド(B), デバッグの開始(D), プロセスへアタッチ(A)...
>  としてSeak.exe につなぐ
>  ※この時、プロジェクトは閉じておくこと
> 6.MainFrm.cpp かVoiceManager.cpp を開いて、適当な所
>   (OnSayIt(), start_queue() など)にブレークポイントを仕掛ける
> 7.Meadow のカーソルを動かして、ブレークポイントで止める
> 
実はプロセスにアタッチしてデバッグする方法がわからなくて困っていました。
こういう風にするのですか。
# Visual Studioの基本的な使い方がまだわかっていないのです。
# どこを読めば使い方が書いてあるのか未だにわかりません。
# MSDNは巨大なだけで使いにくいし、紙のマニュアルはないし。
# いろいろ教えてください。

> 1.半角スペースの後に日本語があるとそれ以降読まない
>  start_queue() かなと思ったのですがまだ分かりません。
>  もしかするとProTALKER ?

坂本さんも書かれていますが、私のところでも大体読み上げます。
大体と表現したのは、気まぐれに読み上げたり読み上げなかったりするのです。
# あとこの東芝DynabookSS、YAMAHAのOPL-3のWDM版です、でやると
# スピーチサーバーがよく死ぬので困っています。

それと dtk-set-punctuations-to-all としてから読ますと、常にすべての記
号も読み上げます。このモードが some だと、 コロンなどは無視して読み上
げません。

何が違うのでしょうね。白藤さんのサウンドチップとドライバーは何ですか
? 環境はNTですか98ですか?

> 2.長いソースでC-n で連続して移動すると行読みしなくなる場合がある

VoiceManager.cppのような英語のソースだと、全く大丈夫でした。白藤さん
のこの現象は日本語混じりのソースでしょうか?

>  デバッグ中にもなるので、Thread か Windows Message で非同期の動作が
> あり、VoiceManager の中でhead, speaking_head がくるうのではないか
> と疑っています。クリティカルセクションの必要な部分はありませんか?

"クリティカルセクション" ! 名前だけは聞いたことがありますが、
まだ理解していない部分です。

> 3.半角カタカナだけの行を日本語で読まない
> International.cpp の IsJapanese() のfor ループの中に
>     if (_ismbbkana((unsigned char)*str)) return 1;
> のようなコードを入れて半角カタカナのチェックも必要なようです。

ですね。「半角カタカナは嫌いだ! 追放しろ!」というわけにも行かないの
で困ったものです。
エーと、この領域はすべて日本語に読ませて、つまり半角カタカナだと思っ
てよいのでしょうか?

> 4.Find file でミニバッファに入ったときに、C-i を3回以上おすと
>  2回でファイルリストが表示され、3回目以降はスクロールするはずですが
> 表示ページが切り替わってしまいます。

こちらでも確認しました。
# こんな機能があるなんで知らなかった。
確かにEmacspeakを立ち上げるとこうなりますね。

> elisp は全く分かりませんので、C/C++ で分かる部分を追っかけます。
> # 仕事中 Meaddow と VC++ はいつも立ち上がっているので気持ちを切り替え
> # たい時に追っかけます。
> 
よろしくお願いいたします。
白藤さんはお住まいはどちらですか?
お休みのときにお時間を取って頂けたら、ご一緒にデバッグできると、作業
がはかどりそうですね。
白藤さん参入により、急速に進歩しそうな予感がしています。
バザール万歳!

# CVSをしばらくメインテナンスしていないので、来週の月曜の夜
# にでも整理します。