SachikoTestTarget ver.20111127 プロセスメモリエディタ等のテスト用のプログラムです。 このプログラムは、自分のプロセスメモリの適当なアドレスに擬似乱数(または、ユーザーが指定した任意の数値)を書き込みます。 それを任意のプロセスメモリエディタ等で検索したり、値を書き換えたりすることでテストして下さい。 「プロセスメモリエディタを使う練習」や「プロセスメモリエディタの機能確認」などに利用できます。 32bit版と64bit版の2つを用意しています。 ソース(C言語のファイル1つのみ)も同梱していますが、恥ずかしいのでジロジロ見ないで下さい。 ●動作環境 Windowsです。 32bit版はWindows95でもWindows7でも動くはずです。これらより新しいOSでも動いてほしい気がします。 NT4(IA-32版)で動かない理由は無いと思いますが、動作確認する予定はありません。 64ビット(AMD64、Intel 64)版OSでも動作するはずです。Itanium系などは知りません。 サーバー系OSとかWineとかは知りません。 日本語版以外のOS、日本語以外の環境も知りません。 Boot.iniに"/3GB"とか書いている環境でも動くと思いますが、動作未確認です。 NT系OSで、管理者権限を持たないユーザーアカウントでの動作は未確認です。関係無いとは思いますが。 ランタイムは不要です。 64bit版は64ビット(AMD64、Intel 64)版のWindowsXP、Vista、7で動くはずです。これらより新しいOSでも動いてほしい気がします。 ●特徴 下位アドレスから上位アドレスまで、複数のアドレスに値を書き込みます。7FFF0000以上のアドレスに対応しているかどうかのテストにも使えます。 複数のアドレスに同じ値を書き込むことも、バラバラの値を書き込むこともできます。 コマンドプロンプトから起動すれば、フォントサイズやフォントを変更できます。15.6インチディスプレイで1920x1080ドット表示の人も、42インチディスプレイで640x480ドット表示の人も、自分の好きなフォントサイズで使えます。 32bit版と64bit版の2つを用意しています。 ソース(C言語のファイル1つのみ)も同梱していますが、恥ずかしいのでジロジロ見ないで下さい。 ●画面説明 上から順に、数値入力欄が2つ、ボタンが3つ、テキスト表示欄が1つあります。 数値は16進形式(先頭に0xを付ける)または10進形式で入力できます。32ビット符号なし整数のみです。 ボタンに関しては「使用方法」のところで記述します。 テキスト表示欄は、1行につき アドレス 10進表記 16進で4バイトダンプ の形式で表示されます。 --で3つに区切られていますが、上段はVirtualAllocで確保した領域、中段はグローバル変数、下段はHeapAlloc,GlobalAlloc,LocalAllocで確保した領域です。 ●使用方法 一番上の入力欄の数値を数値A、その下の入力欄の数値を数値Bとすると、 ・数値A ≦ 数値B のときにWrite(A)ボタンを押す:  数値A以上で数値B以下の擬似乱数を1つ生成して、それを全てのアドレスに書き込みます。  範囲内のアドレスが全て検索できるかどうかの確認に利用できます。 ・数値A ≦ 数値B のときにWrite(B)ボタンを押す:  数値A以上で数値B以下の擬似乱数を、各アドレスごとに生成して書き込みます。  特定のアドレスが検索できるかどうかの確認に利用できます。 ・数値A ≧ 数値B のときにWrite(A)ボタンまたはWrite(B)ボタンを押す:  数値Aの値を全てのアドレスに書き込みます。  ユーザーが指定した任意の数値を書き込む場合に利用できます。  数値Bをゼロのままにしておくと、数値Aをいろいろ変化させたい場合に楽です。 ・Readボタンを押す:  全てのアドレスの内容を読んで表示します。  他のプロセスメモリエディタから、このプロセスのメモリを書き換えできたかどうかの確認に利用できます。 ●コマンドプロンプトから起動 コマンドプロンプトから起動することで、「入力欄やボタンの縦のサイズ」「フォントの縦のサイズ」「入力欄やボタンの間隔のサイズ」「フォント名」を指定できます。後ろから順に省略可能です。 例えば、32bit版の場合 SachikoTestTarget32 22 16 6 MS Gothic とすると、 「入力欄やボタンの縦のサイズ=22」「フォントの縦のサイズ=16」「間隔のサイズ=6」「フォント名=MS Gothic」 の意味になります。 フォント名はダブルクォーテーションなどで囲まないで下さい。 また、Windows9x系では「MS Gothic」ではなく、「MS ゴシック」で指定して下さい。NT系ではどちらでもOKのようです。 数値が大きすぎる場合の動作は未確認です。 ウィンドウのサイズは起動後に手動で変更して下さい。ウィンドウのサイズに応じて、「入力欄やボタンの横のサイズ」と「テキスト表示欄のサイズ」も変更されます。 不適切なコマンドライン指定、例えば SachikoTestTarget32 q とでも入力すれば、例がいくつか表示されます。 ●ソースファイルについて C言語のファイル1つのみ同梱しています。プロジェクトファイルやMAKEFILEは同梱していません。 VC++で使う場合はWin32コンソールアプリケーションではなく、Windowsアプリケーションを「空のプロジェクト」で作成して、このソースファイルを追加すれば良いと思います。そのままビルドするとエラーになるはずですので、SMALL_EXEFILEの定義を0にするか、ソースのコメントに従って設定を変更して下さい。 VC++以外でも、C言語ソースとしてコンパイルできると思います。必要に応じてSMALL_EXEFILEの定義を0にしたり、warning対策したりして下さい。 このソースファイルを見る時は、常に疑う気持ちを忘れないようにして下さい。「正しく作られたプログラム」であるとは思わないで下さい。 ●転載や二次配布など とりあえず禁止しておきます。 ただし、事前に作者の了承を得た場合はその限りではありません。 ●注意事項 作者の環境ではそれなりに動作していますが、動作保証は一切ありません。 Vista以降で使う場合、Program Filesフォルダ以下やWindowsフォルダ以下に置いた時の動作は未確認です。 「互換モードでこのプログラムを実行する」を利用して動かした時の動作は未確認です。 ●配布場所(2011年11月27日現在) http://milfa.akari-house.net/sachiko_test.html (ツールの配布場所) http://milfa.akari-house.net/ (トップページ) ●更新履歴 ・2011/11/27 初公開