C# Coder gesucht

07/20/2010 21:11 bannibank#1
Ich such wen der seine tools in C# programmiert, der mir die ReadProgressMemory Funktion etwas genauer erklärenkann.
Mfg
bannibank
07/20/2010 21:19 nkkk#2
Quote:
Originally Posted by bannibank View Post
Ich such wen der seine tools in C# programmiert, der mir die ReadProgressMemory Funktion etwas genauer erklärenkann.
Mfg
bannibank
  1. ich denke du meinst ReadProcessMemory oder?
  2. wenn ich recht habe: das hst erstmal nichts mit C# zu tun, auch in C++ oder (glaubich) auch in autoIt benutzt man ReadProcessMemory.
07/20/2010 21:24 KDeluxe#3
PHP Code:
        //FindWindow()
        
[DllImport("user32.DLL")]
        public static 
extern IntPtr FindWindow(
            
string lpClassName,
            
string lpWindowName
        
);

        
//GetWindowThreadProcessId()
        
[DllImport("user32.dll"CharSet CharSet.Auto)]
        static 
extern uint GetWindowThreadProcessId(
            
IntPtr hWnd,
            
out uint lpdwProcessId
        
);

        
//OpenProcess()
        
[DllImport("kernel32.dll")]
        public static 
extern IntPtr OpenProcess(
            
UInt32 dwDesiredAccess,
            
Int32 bInheritHandle,
            
UInt32 dwProcessId
        
);

        
//ReadProcessMemory()
        
[DllImport("kernel32.dll"SetLastError true)]
        static 
unsafe extern bool ReadProcessMemory(
         
IntPtr hProcess,
         
IntPtr lpBaseAddress,
         
voidlpBuffer,
         
int dwSize,
         
out IntPtr lpNumberOfBytesRead
        
);

        
//WriteProcessMemory()
        
[DllImport("kernel32.dll")]
        static 
extern bool WriteProcessMemory(
            
IntPtr hProcess,
            
IntPtr lpBaseAddress,
            
byte[] lpBuffer,
            
UIntPtr nSize,
            
out IntPtr lpNumberOfBytesWritten
        
); 
Das fügst du einfach unter
PHP Code:
public partial class GUI Form
    

ein.

Für den Rest schaust du dir die MSDN oder ein paar Tutorials an.

[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
07/20/2010 21:47 Akorn#4
Quote:
Originally Posted by nkkk View Post
  1. ich denke du meinst ReadProcessMemory oder?
  2. wenn ich recht habe: das hst erstmal nichts mit C# zu tun, in C++ oder (glaubich) auch in autoIt benutzt man ReadProcessMemory.
ReadProcessMemory ist eine funktion der WinApi und die kann man in so jeder gängigen sprache verwenden, auch in C#.
07/20/2010 22:03 nkkk#5
Quote:
Originally Posted by Akorn View Post
ReadProcessMemory ist eine funktion der WinApi und die kann man in so jeder gängigen sprache verwenden, auch in C#.
ich hab nie das gegenteil behaupet, aber zur besseren verständlichkeit habe ich in meinen ersten post noch ein "auch" eingefügt^^
07/20/2010 22:13 bannibank#6
nein ich mein viel eher wass ich dem alles geben muss das erste is der process also nksp und das 2. is ja die base 1 oder 2 aber in welchem format ?? IntPtr ist ja icht gleich int oder??
und was in die anderen einzusetzen ist
mfg
bannibank
07/20/2010 22:50 nkkk#7
Quote:
Originally Posted by bannibank View Post
IntPtr ist ja nicht gleich int oder??

doch im prinzip schon
PHP Code:
int i 547;
IntPtr ip = (IntPtr)i;
int r = (int) ip
ganz leicht umwandeln.
wenn du einen int wert als IntPtr haben wilst einfach (IntPtr) davor schreiben.
07/20/2010 23:10 bannibank#8
Das heißt IntPtr sind diese hexadezimalen zahlen oder?

IntPtr hProcess,
IntPtr lpBaseAddress,
void* lpBuffer,
int dwSize,
out IntPtr lpNumberOfBytesRead
aber wo beom ich die ganzen sachen denn her
hProcess ist ja der processcode oder (wie kommich an den)
lpBaseAdress ist ja schon die base + offsets
und der rest sag mir gar nix xD
da werd ich auch aus deinem code nicht schlau xD
Mfg
bannibank
07/20/2010 23:16 nkkk#9
Quote:
Originally Posted by bannibank View Post
Das heißt IntPtr sind diese hexadezimalen zahlen oder?

IntPtr hProcess,
IntPtr lpBaseAddress,
void* lpBuffer,
int dwSize,
out IntPtr lpNumberOfBytesRead
aber wo beom ich die ganzen sachen denn her
hProcess ist ja der processcode oder (wie kommich an den)
lpBaseAdress ist ja schon die base + offsets
und der rest sag mir gar nix xD
da werd ich auch aus deinem code nicht schlau xD
Mfg
bannibank
ansonsten hab ich dir doch mal ein fprojekt gegeben, das die target hp ausliest, die klasse MultiLevelPointer arbeitet auch mit ReadProcessMemory da kannst du sehen wie man ReadProcessMemory z.B. benutzen kann.
07/20/2010 23:21 bannibank#10
nkkk aus der werd ich nicht ganz schlau weil du einen ganz anderen schreibstiel hast wie ich
ps: this. kanst du fast überall weg lassen dann sieht der code nicht ganz so komplizert aus (meinr meinung nach )
07/20/2010 23:29 nkkk#11
Quote:
Originally Posted by bannibank View Post
ps: this. kanst du fast überall weg lassen dann sieht der code nicht ganz so komplizert aus (meinr meinung nach )
ganz im gegenteil: this. verinfacht den code.
wenn man schreibt
PHP Code:
xPos 9
muss man erst überlgen ob xPos eine instanzvariable, eine lokale varible, eine statische variable, oder was auch immer ist.
wenn man jedoch schreibt:
PHP Code:
this.xPos 9
weiss man ganz genau: xPos ist eine instanzvaribale, oder eine Property.^^
(meiner meinug nach)
07/20/2010 23:38 bannibank#12
Quote:
Originally Posted by nkkk View Post
ganz im gegenteil: this. verinfacht den code.
wenn man schreibt
PHP Code:
xPos 9
muss man erst überlgen ob xPos eine instanzvariable, eine lokale varible, eine statische variable, oder was auch immer ist.
wenn man jedoch schreibt:
PHP Code:
this.xPos 9
weiss man ganz genau: xPos ist eine instanzvaribale, oder eine Property.^^
(meiner meinug nach)
jeder wie ers mag xD
jetz aber nochmal kann mir irgendwer sagen oder ein code snipped in CSharp machen wie ich an alle sachen kome wo ich brauche also bases und ofsets sind ja klar für die meißtn warscheinlich auch der rest aber für mich istdas noCH unklar
mfg
bannibank
07/21/2010 12:37 Cholik#13
#closed

Requests Thread nutzen.