return a float value from ReadProcessMemory in python
I have an address containing the y-position in the game called Assault Cube (I'm learning about reverse engineering)
My problem is readprocessmemory's ReadBuffer.value returns an integer, and I'm looking for a way to receive the value as a float. Does anyone know how to do this in python?
In the picture I've tried to illustrate how an integer (1125777408) is returned, which itself is correct, but I'd like to find a way to have the float value returned (104).
def ReadProcessMemory(self, hProcess, lpBaseAddress):
try:
lpBaseAddress = lpBaseAddress
ReadBuffer = ctypes.c_uint()
lpBuffer = ctypes.byref(ReadBuffer)
nSize = ctypes.sizeof(ReadBuffer)
lpNumberOfBytesRead = ctypes.c_ulong(0)
ctypes.windll.kernel32.ReadProcessMemory(
hProcess,
lpBaseAddress,
lpBuffer,
nSize,
lpNumberOfBytesRead
)
return ReadBuffer.value
except (BufferError, ValueError, TypeError):
self.CloseHandle(hProcess)
e = 'Handle Closed, Error', hProcess, self.GetLastError()
return e
python winapi reverse-engineering
add a comment |
I have an address containing the y-position in the game called Assault Cube (I'm learning about reverse engineering)
My problem is readprocessmemory's ReadBuffer.value returns an integer, and I'm looking for a way to receive the value as a float. Does anyone know how to do this in python?
In the picture I've tried to illustrate how an integer (1125777408) is returned, which itself is correct, but I'd like to find a way to have the float value returned (104).
def ReadProcessMemory(self, hProcess, lpBaseAddress):
try:
lpBaseAddress = lpBaseAddress
ReadBuffer = ctypes.c_uint()
lpBuffer = ctypes.byref(ReadBuffer)
nSize = ctypes.sizeof(ReadBuffer)
lpNumberOfBytesRead = ctypes.c_ulong(0)
ctypes.windll.kernel32.ReadProcessMemory(
hProcess,
lpBaseAddress,
lpBuffer,
nSize,
lpNumberOfBytesRead
)
return ReadBuffer.value
except (BufferError, ValueError, TypeError):
self.CloseHandle(hProcess)
e = 'Handle Closed, Error', hProcess, self.GetLastError()
return e
python winapi reverse-engineering
add a comment |
I have an address containing the y-position in the game called Assault Cube (I'm learning about reverse engineering)
My problem is readprocessmemory's ReadBuffer.value returns an integer, and I'm looking for a way to receive the value as a float. Does anyone know how to do this in python?
In the picture I've tried to illustrate how an integer (1125777408) is returned, which itself is correct, but I'd like to find a way to have the float value returned (104).
def ReadProcessMemory(self, hProcess, lpBaseAddress):
try:
lpBaseAddress = lpBaseAddress
ReadBuffer = ctypes.c_uint()
lpBuffer = ctypes.byref(ReadBuffer)
nSize = ctypes.sizeof(ReadBuffer)
lpNumberOfBytesRead = ctypes.c_ulong(0)
ctypes.windll.kernel32.ReadProcessMemory(
hProcess,
lpBaseAddress,
lpBuffer,
nSize,
lpNumberOfBytesRead
)
return ReadBuffer.value
except (BufferError, ValueError, TypeError):
self.CloseHandle(hProcess)
e = 'Handle Closed, Error', hProcess, self.GetLastError()
return e
python winapi reverse-engineering
I have an address containing the y-position in the game called Assault Cube (I'm learning about reverse engineering)
My problem is readprocessmemory's ReadBuffer.value returns an integer, and I'm looking for a way to receive the value as a float. Does anyone know how to do this in python?
In the picture I've tried to illustrate how an integer (1125777408) is returned, which itself is correct, but I'd like to find a way to have the float value returned (104).
def ReadProcessMemory(self, hProcess, lpBaseAddress):
try:
lpBaseAddress = lpBaseAddress
ReadBuffer = ctypes.c_uint()
lpBuffer = ctypes.byref(ReadBuffer)
nSize = ctypes.sizeof(ReadBuffer)
lpNumberOfBytesRead = ctypes.c_ulong(0)
ctypes.windll.kernel32.ReadProcessMemory(
hProcess,
lpBaseAddress,
lpBuffer,
nSize,
lpNumberOfBytesRead
)
return ReadBuffer.value
except (BufferError, ValueError, TypeError):
self.CloseHandle(hProcess)
e = 'Handle Closed, Error', hProcess, self.GetLastError()
return e
python winapi reverse-engineering
python winapi reverse-engineering
edited Jan 1 at 20:15
jubibanna
asked Jan 1 at 20:10
jubibannajubibanna
3968
3968
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
There is a ctypes
method called c_float
, so use ctypes.c_float()
instead of ctypes.c_int()
.
Wow that was easy - that did the trick! Thought I already tried that.. Thanks! :-)
– jubibanna
Jan 1 at 20:20
@jubibanna: If his answer fixed your problem, please accept it as this is customary on SO.
– zx485
Jan 1 at 21:15
Sorry I forgot. I was trying to accept your answer too fast and there was a 5 minute limitation. Corrected :)
– jubibanna
Jan 2 at 0:12
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53998591%2freturn-a-float-value-from-readprocessmemory-in-python%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
There is a ctypes
method called c_float
, so use ctypes.c_float()
instead of ctypes.c_int()
.
Wow that was easy - that did the trick! Thought I already tried that.. Thanks! :-)
– jubibanna
Jan 1 at 20:20
@jubibanna: If his answer fixed your problem, please accept it as this is customary on SO.
– zx485
Jan 1 at 21:15
Sorry I forgot. I was trying to accept your answer too fast and there was a 5 minute limitation. Corrected :)
– jubibanna
Jan 2 at 0:12
add a comment |
There is a ctypes
method called c_float
, so use ctypes.c_float()
instead of ctypes.c_int()
.
Wow that was easy - that did the trick! Thought I already tried that.. Thanks! :-)
– jubibanna
Jan 1 at 20:20
@jubibanna: If his answer fixed your problem, please accept it as this is customary on SO.
– zx485
Jan 1 at 21:15
Sorry I forgot. I was trying to accept your answer too fast and there was a 5 minute limitation. Corrected :)
– jubibanna
Jan 2 at 0:12
add a comment |
There is a ctypes
method called c_float
, so use ctypes.c_float()
instead of ctypes.c_int()
.
There is a ctypes
method called c_float
, so use ctypes.c_float()
instead of ctypes.c_int()
.
answered Jan 1 at 20:17
AdamAdam
38613
38613
Wow that was easy - that did the trick! Thought I already tried that.. Thanks! :-)
– jubibanna
Jan 1 at 20:20
@jubibanna: If his answer fixed your problem, please accept it as this is customary on SO.
– zx485
Jan 1 at 21:15
Sorry I forgot. I was trying to accept your answer too fast and there was a 5 minute limitation. Corrected :)
– jubibanna
Jan 2 at 0:12
add a comment |
Wow that was easy - that did the trick! Thought I already tried that.. Thanks! :-)
– jubibanna
Jan 1 at 20:20
@jubibanna: If his answer fixed your problem, please accept it as this is customary on SO.
– zx485
Jan 1 at 21:15
Sorry I forgot. I was trying to accept your answer too fast and there was a 5 minute limitation. Corrected :)
– jubibanna
Jan 2 at 0:12
Wow that was easy - that did the trick! Thought I already tried that.. Thanks! :-)
– jubibanna
Jan 1 at 20:20
Wow that was easy - that did the trick! Thought I already tried that.. Thanks! :-)
– jubibanna
Jan 1 at 20:20
@jubibanna: If his answer fixed your problem, please accept it as this is customary on SO.
– zx485
Jan 1 at 21:15
@jubibanna: If his answer fixed your problem, please accept it as this is customary on SO.
– zx485
Jan 1 at 21:15
Sorry I forgot. I was trying to accept your answer too fast and there was a 5 minute limitation. Corrected :)
– jubibanna
Jan 2 at 0:12
Sorry I forgot. I was trying to accept your answer too fast and there was a 5 minute limitation. Corrected :)
– jubibanna
Jan 2 at 0:12
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53998591%2freturn-a-float-value-from-readprocessmemory-in-python%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown