habe gerade mal ein nützliches Tutorial gefunden, welches ich auch befolgt habe und mir einen Test-InvHack machen wollte.
Program.cs:
Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using WindowsFormsApplication1;
namespace
{
static class Program
{
/// <summary>
/// Der Haupteinstiegspunkt für die Anwendung.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
Form1.cs:
Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Diagnostics;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
[DllImport("kernel32.dll", SetLastError = true)]
static extern bool WriteProcessMemory(IntPtr hProcess, IntPtr lpBaseAddress, byte[] lpBuffer, uint nSize, out int lpNumberOfBytesWritten);
[DllImport("kernel32.dll")]
public static extern IntPtr OpenProcess(int dwDesiredAccess, bool bInheritHandle, int dwProcessId);
public Form1()
{
InitializeComponent();
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
IntPtr Addr = (IntPtr)0x34239FD7;
if ((string)listBox1.SelectedItem == "AAA12GL")
{
WriteIntegr(Addr, 7101);
}
}
private void WriteIntegr(IntPtr Address, int Value)
{
var array = BitConverter.GetBytes(Value);
int bytesWritten;
int WolfId = Process.GetProcessesByName("Wolfteam.bin")[0].Id;
IntPtr hProc = OpenProcess([U][B]ADRESSE[/B][/U], false, WolfId);
WriteProcessMemory(hProc, Address, array, (uint)array.Length, out bytesWritten);
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
So, nur funktioniert das ganze nicht bzw. kann auch gar nicht funktionieren, da mir die ProcessID fehlt.
Für Softnyx lautet diese ja anscheinend 0x1F0FF.
Und für AERIA DE? Da einfach nach dem Prozess in CE schauen und die Nummer da einbauen?
Und btw, kann der Hack überhaupt in diesem Zustand laufen?
Mach das am besten in Visual Basic.
dazu brauchst du auch nur WriteInteger("Wolfteam.bin","Adresse","Value","Byt e")
Das machst du in nen Timer und fertig!
Ja, aber brauche ich noch die ProcessID?
Also das was da fett markiert ist.
Und hast du zufällig die für DE? Wäre dir dankbar.
Edit: Fehler 1 "WriteInteger" wurde nicht deklariert. Auf das Objekt kann aufgrund seiner Schutzstufe möglicherweise nicht zugegriffen werden.
Code:
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
WriteInteger("wolfteam.bin", "&34398900", "3")
End Sub
End Class
Ja, aber brauche ich noch die ProcessID?
Also das was da fett markiert ist.
Und hast du zufällig die für DE? Wäre dir dankbar.
Edit: Fehler 1 "WriteInteger" wurde nicht deklariert. Auf das Objekt kann aufgrund seiner Schutzstufe möglicherweise nicht zugegriffen werden.
Code:
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
WriteInteger("wolfteam.bin", "&34398900", "3")
End Sub
End Class
Final: I have edited it & made it easier, should work.
Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Diagnostics;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
[DllImport("kernel32.dll", SetLastError = true)]
static extern bool WriteProcessMemory(IntPtr hProcess, IntPtr lpBaseAddress, byte[] lpBuffer, uint nSize, out int lpNumberOfBytesWritten);
public Form1()
{
InitializeComponent();
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
IntPtr Addr = (IntPtr)0x34239FD7;
if ((string)listBox1.SelectedItem == "AAA12GL")
{
WriteInteger(Addr, 7101);
}
}
private void WriteInteger(IntPtr Address, int Value)
{
var array = BitConverter.GetBytes(Value);
int bytesWritten;
IntPtr hProc = Process.GetProcessesByName("Wolfteam.bin")[0].Handle;
WriteProcessMemory(hProc, Address, array, (uint)array.Length, out bytesWritten);
}
}
}