検索結果 11 件

by ナナシ
2005年9月17日(土) 17:52
フォーラム: プログラミング質問板
トピック: ver2.62 フォントの設定について
返信数: 5
閲覧数: 4704

フォント名ではなくてText$の中身が問題かもしれません。 Text$の中身はアルファベット(半角文字)ですか? FixedSys等の多くのフォントはアルファベットや記号のデータしか含まないため、その中に無い2バイト文字はデフォルトのフォント(MS PゴシックかMS UIゴシック辺りと思われる)になってしまいます。 つまり日本語を表示すると"FixedSys","Courier","Westminster"の間に差はありません。 正しい見分け方ではありませんが、コントロールパネルのフォントで数M単位のファイルサイズがあるフォントは日本...
by ナナシ
2005年9月05日(月) 00:04
フォーラム: 実践コードモジュール
トピック: マシン語を走らせる
返信数: 2
閲覧数: 8979

・Windows XP Pro SP2 と Turion64 MT-30 ・Windows XP Home SP2 と PentiumM 730 の組み合わせでデータ実行防止(DEP)が 作動することを確認しました。 (DEPの有効範囲を全プログラムに変更する必要あり) その場合、次のようなコードに変更すると動くようになります。 Dim asm[ELM(11)]=[&H55,&H8B,&HEC,&H8B,&H45,&H08,&H40,&HC9,&HC2,&H04,&H00] As Byte Dim Inc ...
by ナナシ
2005年9月01日(木) 20:13
フォーラム: バグ報告
トピック: ABのメモリ関係?バグ
返信数: 6
閲覧数: 7655

gdi32.dllをフックしてリソースの確保~解放を調べてみたところ、
コード入力ウィンドウの再描画時に使っているExtSelectClipRgnで
使ったリージョンハンドルが未解放になってるみたいです。

MSDNのExtSelectClipRgnの説明には、

この関数は、hrgn パラメータで指定したリージョンのコピーを使います。
指定したリージョンそのものは、関数呼び出し後も有効です。

とあるので解放しないとまずいと思います。

# このリソース解析ツール、色々応用が利きそうなので拡張してみます。
by ナナシ
2005年8月31日(水) 21:07
フォーラム: プログラミング質問板
トピック: GDIオブジェクトの数って何ですか?
返信数: 4
閲覧数: 6258

コントロールそのものはGDIオブジェクトではないのでカウントはされません。 今回の場合はWM_SETFONTを使用しているとのことですので、 WM_SETFONT用に作成したフォントが削除されていないのではないでしょうか。 Function MainWnd_Create(...) Dim hFont As HFONT hFont = CreateFont(...) SendMessage(hMainWnd, WM_SETFONT, hFont, 0) EndFunction 上記のようなコードの場合 hFont はローカル変数なので MainWnd_Create を出るとクリアされますが、 フ...
by ナナシ
2005年8月30日(火) 21:23
フォーラム: プログラミング質問板
トピック: GDIオブジェクトの数って何ですか?
返信数: 4
閲覧数: 6258

GDIオブジェクトをざっとあげてみると
・デバイスコンテキスト
・ビットマップ
・ペン
・ブラシ
・リージョン
・フォント
・パレット
などがそうです。他にもあるでしょう。

たとえばCreateBitmapを行うとビットマップが1つ作られるので
GDIオブジェクトの数は1つ増えます。
逆に作成したビットマップをDeleteBitmapで削除すれば1つ減ります。
by ナナシ
2005年8月23日(火) 23:58
フォーラム: プログラミング質問板
トピック: 別スレッド間でのオブジェクトの操作
返信数: 11
閲覧数: 7828

↑ログインできてませんでした。これは私です。
by ナナシ
2005年8月23日(火) 22:42
フォーラム: プログラミング質問板
トピック: 外部ファイルを使った比較
返信数: 14
閲覧数: 8694

淡幻星さん
> ふと。こういう横スレって失礼にあたるものでしょうか?
> もしそうでしたら、以後は気をつけます。

そのように受け止める人はいるかもしれません。
私は、多くの人がレスをつけているほうが掲示板らしくていいと思いますね。
(荒らしなんかは論外ですが)

> それから、この場で言うのもなんですが、ナナシさんのサイトのAB講座は
> 大変参考になりました。とくにVer2.xでの窓のメッセージループの解説は助か
> りました。

そういっていただけると嬉しいです。
by ナナシ
2005年8月20日(土) 11:13
フォーラム: プログラミング質問板
トピック: 別スレッド間でのオブジェクトの操作
返信数: 11
閲覧数: 7828

MCI系の関数は初期化から解放まで同じスレッドで処理しないと
ダメだった気がします。


         BGM再生用のオブジェクト←―┐
                        │
                        │
  ゲームのスレッド――――――――――→ウィンドウ制御スレッド
  (曲変更などのメッセージを送る)  (BGMを作成したスレッド)
                    (Notifyで制御を返す)


こういう感じで、ウィンドウ制御スレッドが依頼を受け付けてBGM操作をする
ようにはできませんか?
by ナナシ
2005年8月20日(土) 10:56
フォーラム: プログラミング質問板
トピック: 外部ファイルを使った比較
返信数: 14
閲覧数: 8694

[相談内容] ランダムに01.txtから1行抜いて同じ行で02.txtから抜けないと 訳が合わないと思うのですが、この部分ができるのかどうか。 ファイルは先頭から連続で読み出す操作はしやすいですが、 ランダムな位置にあるものを読み込むのは苦手です。 出題のたびにファイルから問題を読み出そうとすると話が難しくなるので ここはまず必要なデータをすべて配列に入れるのが良いでしょう。 読みやすさを損なわない程度に極力短くしたサンプルを載せます。 #N88BASIC ' ↓ ここからプログラムが実行されます Const NUM_QUESTION = 10 '問題数 Dim eng$(NUM_QUEST...
by ナナシ
2005年8月08日(月) 23:52
フォーラム: バグ報告
トピック: ABのメモリ関係?バグ
返信数: 6
閲覧数: 7655

とりあえず

まだ正式対応されていないようですので、GDIオブジェクトを消費し続ける 現象を回避する補助プログラムを組んでみました。 http://www.uranus.dti.ne.jp/~kpnanasi/ab/program/index.html#PatchPE に置いておきますので自己責任にてご自由にお使いください。 とりあえず使ってなさそうなGDIオブジェクトを解放するようになってます。 ただし、これはあくまで私が勝手に作成した補助プログラムであるため、 公式なものではありません。 また、ProjectEditorのバグ報告を行う際は、この補助プログラムを 使っていない状態で確認していただくようお...
by ナナシ
2005年7月09日(土) 06:00
フォーラム: バグ報告
トピック: ABのメモリ関係?バグ
返信数: 6
閲覧数: 7655

同様の現象に遭遇したことがあります。 ハンドルの解放を忘れたときの症状に非常によく似ていたため、 タスクマネージャでGDIオブジェクト数を表示させてみたところ、 キー入力やコンパイルを行った時に増える一方で、減る気配がありません。 増えるタイミングを調べてみたところ、コード編集画面の再描画時に 増えているように見えました。RADやアイコン編集画面は関係ないようです。 環境によって変わるかもしれませんが、GDIオブジェクトの値が9900を 越えるころになると描画がおかしくなります。 ■環境 AB 4.02.01 OS:Windows2000Pro SP4 MEM:768MB CPU:Athlon...