Доброе время суток!
Столкнулся с проблемой вывода найденного значения в "float" и в дальнейшем отправка его обратно.
Столкнулся с проблемой вывода найденного значения в "float" и в дальнейшем отправка его обратно.
Код:
#include <nomadmemory.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
$ProcessName = "Point Blank" ;Собственно...Название окна
Global $ProcessID = WinGetProcess($ProcessName,"") ;Ну или $Pid кому как нравится
Global $HP = 0x02C03984 ;
Global $DllInformation = _MemoryOpen($ProcessID)
If $ProcessID = -1 Then
MsgBox(4096, "#Error4", "Сперва запустите игру.")
Exit
EndIf
$CurrentHP = (_MemoryRead($HP, $DllInformation, 'ptr'))
$Cur = $CurrentHP + 0x198 ;offset
$Curr = (_MemoryRead($Cur, $DllInformation, 'ptr'))
$RHP =dec(StringTrimLeft($Curr, 2))
$Form1 = GUICreate("Мышька", 188, 165, 192, 124)
$Input1 = GUICtrlCreateInput($RHP, 16, 48, 153, 21)
$Label1 = GUICtrlCreateLabel("Скорость мыши.", 16, 24, 88, 17)
$Button1 = GUICtrlCreateButton("Применить", 16, 104, 155, 25)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
$znah = GUICtrlRead($Input1)
_MemoryWrite($Curr, $DllInformation, $znah, 'ptr')
EndSwitch
WEnd
Код:
;Получения значения
$CurrentHP = (_MemoryRead($HP, $DllInformation, 'ptr'))
$Cur = $CurrentHP + 0x198 ;offset
$Curr = (_MemoryRead($Cur, $DllInformation, 'ptr'))
$RHP =dec(StringTrimLeft($Curr, 2))
;отправка обратно
_MemoryWrite($Curr, $DllInformation, $znah, 'ptr')