掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ReadProcessMemoryで「メモリ ロケーションへのアクセスが無効です。」とエラー (ID:23567)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
[開発環境]Delphi7 Professional [ O S ]WindowsXP Pro いつもお世話になっております。 早速件名についてご教授願いたいのですが 下記のコーディングを行い他のプログラムのメモリを読みとろうとすると ReadProcessMemoryを行うと0が返ってきました。 エラー内容をみると 「メモリ ロケーションへのアクセスが無効です。」となります。 で調べたのですが、このボタンを押す度にプロセスのハンドル(t_hPrs)が変動 します。おそらくはこのせいだと思うのですが。 またC++で同様の内容をコーディングすると正常に取得でき プロセスのハンドル値も一定です。 procedure TForm1.Button1Click(Sender: TObject); var t_hWnd : HWND; t_uPid : Cardinal; t_hPrs : Cardinal; mBase : Cardinal; dwRMem : Cardinal; t_Text : Pointer; begin t_Text := nil; mBase := $04394551; t_hWnd := FindWindow(nil,'TEST'); GetWindowThreadProcessId(t_hWnd,t_uPid); t_hPrs := OpenProcess(PROCESS_ALL_ACCESS, FALSE, t_uPid); ReadProcessMemory(t_hPrs,pointer(mBase),t_Text,1,dwRMem); end;
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.