2016-11-16 11 views
0

私はチートエンジンを使ってアプリケーション内の何かを編集するためのアドレスを取得しています。しかし、Visual StudioでRead/WriteProcessMemoryとVisual Basicを使用して値を入力すると間違っているようです。ここでPoatを使ったCheatEngine値を使ったRead/WriteProcessMemory VB

Image

私はチートエンジンで得た値です。では、これらの情報をどのように翻訳し、ReadProcessMemoryを使用して値を取得することができますか?ここで

は異なる値を作業して与えていない私のコードです:

Dim hp = OpenProcess(2035711, 0, ComboBox1.SelectedItem) 
    Dim Pointer = 0 
    ReadProcessMemory(hp, 22724000, Pointer, 4, 0) 
    Dim Address As Integer = Pointer + Convert.ToInt32("784B2", 16) 

    Dim value As Integer = 0 
    ReadProcessMemory(hp, Address, value, 4, Nothing) 
    MsgBox(value) 
+1

まず、数字を16進数で表すことができるので、文字列を変換する必要はありません。したがって 'Address = Pointer +&H784B2'を使うことができます。問題は、あなたの住所が間違っているようです。それは次のように思えます: 'Dim Address As Integer =&H21EF80 +&H784B2'。つまり、ベースアドレス(&H21EF80)にオフセット(&H784B2)を加えたものです。ベースアドレスが正しいと確信していますか? –

+0

@ChrisDunawayそれが正しいかどうか分からないが、私は探検して、物事をする方法を学ぶつもりだ...しかし、情報をありがとう。私は今、CEについて何か知っています。 :D –

+0

@ChrisDunaway正しい値が与えられておらず、ちょうど0であるため、アドレスが正しいかどうかわかりません(私は期待しています)。静的ポインタを取得する方法?私はちょうどポインタが変化していて、ゲームが再開されたときに何も(CEのポインタのリストにある)何も正確な値を与えていないことを知りました。だから、基本的に質問に添付された絵は静的ではありません。 –

答えて

0

コードは完璧に動作しますが、私は変更したいアドレスが間違っていました。だから私はコードが間違っていると思った。とにかく、私を助けて、ヘックスを使うことを提案した皆さんに感謝します。

関連する問題