View previous topic :: View next topic |
Author |
Message |
lolAnonymous Expert Cheater Reputation: 1
Joined: 19 Jul 2015 Posts: 154
|
|
Back to top |
|
|
ulysse31 Master Cheater Reputation: 2
Joined: 19 Mar 2015 Posts: 324 Location: Paris
|
Posted: Sun Dec 18, 2016 3:41 am Post subject: |
|
|
You do an aobscan on a 64 bit process and you store the found address in an int.
an int is most likely 32 bit large while an address on a 64 bit program will require 64 bits.
Try using uint64_t
|
|
Back to top |
|
|
Matze500 Expert Cheater Reputation: 8
Joined: 25 Jan 2012 Posts: 241 Location: Germany
|
Posted: Sun Dec 18, 2016 4:31 am Post subject: |
|
|
There is no uint64_t in C#.
Use IntPtr or UIntPtr instead it is much better.
Make sure every routine in your program uses Intptr, Int64 or long (same with unsigned types) to cover the 8bit length.
To use it with 32bit and 64bit you have to set building to any CPU and remove the prefere 32bit tick in project properties.
Greets Matze
_________________
|
|
Back to top |
|
|
lolAnonymous Expert Cheater Reputation: 1
Joined: 19 Jul 2015 Posts: 154
|
Posted: Sun Dec 18, 2016 5:53 am Post subject: |
|
|
ulysse31 and Matze500 thanks for replying... But my problem is still not solved the addr is still 0 ...
Thanks In Advance
|
|
Back to top |
|
|
Zanzer I post too much Reputation: 126
Joined: 09 Jun 2013 Posts: 3278
|
Posted: Sun Dec 18, 2016 6:58 am Post subject: |
|
|
Does this return 0? Code: | ProcessID = Chrome(); |
The previous ProcessID isn't static, is it? It's the same variable as
You never populate this list. Code: | MemoryRegion = new List<MEMORY_BASIC_INFORMATION>(); |
Was this supposed to return the MemoryRegion? Code: | MemInfo(handledproc.Handle); |
Add debug print statements to see where it's getting.
|
|
Back to top |
|
|
lolAnonymous Expert Cheater Reputation: 1
Joined: 19 Jul 2015 Posts: 154
|
Posted: Sun Dec 18, 2016 8:23 am Post subject: |
|
|
Hello Zanzer ,
thanks for replying again...
ProccessID is not returning 0 (It is working fine)
there is only one ProcessID and it is public int (I forgot to remove this.)
And Check Inbox!
Problem is still not solved...
Thanks In Advance
|
|
Back to top |
|
|
Zanzer I post too much Reputation: 126
Joined: 09 Jun 2013 Posts: 3278
|
Posted: Sun Dec 18, 2016 9:08 am Post subject: |
|
|
It's 64-bit, you can't use ToInt32.
Code: | Addy = new IntPtr(MemInfo.BaseAddress.ToInt32() + (long)MemInfo.RegionSize); |
Code: | Addy = IntPtr.Add(MemInfo.BaseAddress, MemInfo.RegionSize); |
|
|
Back to top |
|
|
lolAnonymous Expert Cheater Reputation: 1
Joined: 19 Jul 2015 Posts: 154
|
Posted: Sun Dec 18, 2016 9:09 pm Post subject: |
|
|
Hey Zanzer thanks for replying and sorry for late reply...
I changed
Code: | Addy = new IntPtr(MemInfo.BaseAddress.ToInt32() + (long)MemInfo.RegionSize);
|
to
Code: | Addy = new IntPtr(MemInfo.BaseAddress.ToInt64() + (long)MemInfo.RegionSize);
|
But the problem is still not solved...
even I changed all Int32 to Int64 but no luck...
[img]http://image.prntscr.com/image/7e7b1573cf7640f6b551b0b5a6fc1ecd.png
[/img]
Thanks In Advance
|
|
Back to top |
|
|
|