Memorywrite String

10/22/2014 22:15 TheMokko#1
#Solved
10/23/2014 00:12 -SoulCr4ck-#2
Quote:
Originally Posted by ►D3v1n3r View Post


Code:
NomadMemory.au3
#RequireAdmin
#include 
#include 
#include 
#include 
#include 
$Form1 = GUICreate("0815 Form", 615, 438, 192, 124)
$Button1 = GUICtrlCreateButton("Button1", 40, 88, 75, 25)
$Input1 = GUICtrlCreateInput("Input1", 40, 32, 121, 21)
GUISetState()

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case -3
Exit
Case $Button1
_memorywrite(0x0141D7B4, _memoryOpen(ProcessExists("S4Client.exe")),"Test","char[50]")
EndSwitch
WEnd
Doch beides geht nicht. Hoffe ihr könnt mir helfen (Nein an den privilegien liegt es nicht)....

Ich seh auf den ersten Blick jetzt keinen anderen Fehler, nur halt daa du keine Privilegien gesetzt hast ...

Vielleicht solltest du die Länge die du schreibst mit StringLen festlegen. "Char["&StringLen("NoobName")&"]"

Setzt einfach ma Privilegien.

Lass dir die Error's ausgeben und post die Error codes hier..

Ist die Page Writeable?
10/23/2014 21:12 KDeluxe#3
Ich wüsste nicht, wofür hier besondere Privilegien benötigt werden, Adminrechte sollten reichen. Meine UDF bietet außerdem für diesen Verwendungszweck eine eigene Funktion: _KDMemory_WriteProcessString()
Kleine Anmerkung zum Script: Schlechter kann man es wohl nicht mehr machen...
10/24/2014 11:30 KDeluxe#4
Ist die Adresse statisch? Ich glaube nicht, in diesem Fall brauchst du erst einmal den "Pointer".
Da du hier offensichtlich einfach nur irgendetwas zusammen kopiert hast, mehr schlecht als recht, sehe ich auch keinen Grund dir ein fertiges Script zu erstellen. Meine UDF setzt sehr detailliert Fehlercodes (@error). Diese Information solltest du auch nutzen, aktuell kann niemand genau sagen, was das Problem ist (wobei ich glaube, dass es sich nicht um eine statische Adresse handelt). Mit dem Fehlercode kann man den Fehler genauer bestimmen.