I'm trying to use BridJ in a way that I'm not sure whether it is supported:
I have a 64 bit application. I get a byte array containing the memory of a
32 bit application through a debugger interface.
I'd like to use BridJ to parse the content of this byte array as C
datatypes. I do this by using
. This technique works in a 32 bit application. But in a 64 bit application
it does not, because BridJ uses the word size of the host application (64
bit) and I want to use the word size of the byte array (32 bit).
Can that be done? Is it possible to somehow switch the word size of BridJ
manually, so that BridJ uses 32 bit words, even if it is run in a 64 bit
Longer example of what I'm trying to do
byte objData = debugger.readMemory(remoteStructAddr, BridJ.sizeOf(
c_struct s = Pointer.pointerToBytes(objData).as(c_struct.class).get();
int structMem = s.member();
byte namePtr = debugger.readMemory(removePtr + StructObject.
offsetOfField(new c_struct(), "name"), 4);
String name = debugger.readString(namePtr);
Some More Details
* I use JNAerator to generate the BridJ classes
* I've tied to use the JNAerator -arch flag, but it doesn't seem to do what
* I don't use a native library together with BridJ, I just use BridJ to
read byte arrays that I get with the debugger API.
You received this message because you are subscribed to the Google Groups
To unsubscribe from this group and stop receiving emails from it, send an email
For more options, visit https://groups.google.com/d/optout.