Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 03:37

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Memoryopen error

Discussion on Memoryopen error within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
yuser's Avatar
 
elite*gold: 0
Join Date: Apr 2011
Posts: 494
Received Thanks: 484
Memoryopen error

Code:
#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.8.1
 Author:         myName

 Script Function:
	Template AutoIt script.

#ce ----------------------------------------------------------------------------

; Script Start - Add your code below here

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.8.1
 Author:         myName

 Script Function:
	Template AutoIt script.

#ce ----------------------------------------------------------------------------

; Script Start - Add your code below here

#RequireAdmin
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Crypt.au3>
#include <StaticConstants.au3>

#Region ### START Koda GUI section ### Form=
$form1 = GUICreate("Minihack-Project;Minium",)
$checkbox1 = GUICtrlCreateCheckbox("Non-Gravity")
$checkbox2 = GUICtrlCreateCheckbox("1 Hit",)
$checkbox3 = GUICtrlCreateCheckbox("200 HP")
$checkbox4 = GUICtrlCreateCheckbox("Infinite Walls",)
$checkbox5 = GUICtrlCreateCheckbox("Hitrange",)
$checkbox6 = GUICtrlCreateCheckbox("Dodge Speed",)
$checkbox7 = GUICtrlCreateCheckbox("Fast fire", )
$checkbox8 = GUICtrlCreateCheckbox("God Mode",)
$checkbox9 = GUICtrlCreateCheckbox("Inf Ammo",)
$checkbox10 = GUICtrlCreateCheckbox("Inf Sp",)
$checkbox11 = GUICtrlCreateCheckbox("Insta-Respawn", )
$checkbox12 = GUICtrlCreateCheckbox("SP Refill", )
$checkbox13 = GUICtrlCreateCheckbox("Speed Hack", )
$button1 = GUICtrlCreateButton("Start Now.",)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
MsgBox(4096, "Minihack-Project;Minium", "Please Do NOT Leech This. Made by yuser. Minihack-Project;Minium")
While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
Case $button1
			_something()
	EndSwitch
	WEnd

Func _something()
	GUISetState(@SW_HIDE)
	ToolTip("Waiting For S4League.", 0, 0)
	$wait = ProcessWait("S4Client.exe")
	$pid = ProcessExists("S4Client.exe")
	Sleep(500)
	[COLOR="Red"]$OPEN = _MemoryOpen ($PID)[/COLOR] <-- Autoit Says That Error Is Here.
	
	If GUICtrlRead($checkbox1) = 1 Then
		_memorywrite(, $open, "", "long")
	 EndIf
    If GUICtrlRead($checkbox2) = 1 Then
		_memorywrite(, $open, "", "long")
	EndIf
	If GUICtrlRead($checkbox3) = 1 Then
	    _memorywrite(, $open, "", "long")
	 EndIf
	 If GUICtrlRead($checkbox4) = 1 Then
	    _memorywrite(, $open, "", "long")
     EndIf
	 If GUICrtlRead($checkbox5) = 1 Then
		_memorywrite(, $open, "1", "float")
     EndIf
	If GUICtrlRead($checkbox6) = 1 Then
		_memorywrite(6112602, $open, "", "long")
	EndIf
	If GUICtrlRead($checkbox7) = 1 Then
		_memorywrite(5635049, $open, "", "long")
	EndIf
	If GUICtrlRead($checkbox8) = 1 Then
		_memorywrite(5343813, $open, "", "long")
	EndIf
	If GUICtrlRead($checkbox9) = 1 Then
		_memorywrite(7704898, $open, "", "long")
	EndIf
	If GUICtrlRead($checkbox10) = 1 Then
		_memorywrite(4723746, $open, "", "long")
	EndIf
	If GUICtrlRead($checkbox11) = 1 Then
		_memorywrite(6174003, $open, "", "long")
	EndIf
	If GUICtrlRead($checkbox12) = 1 Then
		_memorywrite(4753893, $open, "", "long")
	EndIf
	If GUICtrlRead($checkbox13) = 1 Then
		_memorywrite(4715581, $open, "", "long")
	 EndIf
	Exit 
EndFunc
I Deleted The Values And The Adresses For Copyrights lol. Help Pls.
yuser is offline  
Old 06/01/2013, 19:15   #2
 
elite*gold: 5
Join Date: Dec 2011
Posts: 3,930
Received Thanks: 1,918
wo ist
PHP Code:
 #include <Nomadmemory.au3> 
??
Ruffу is offline  
Old 06/01/2013, 19:21   #3
 
yuser's Avatar
 
elite*gold: 0
Join Date: Apr 2011
Posts: 494
Received Thanks: 484
Quote:
Originally Posted by Bɒժ View Post
wo ist
PHP Code:
 #include <Nomadmemory.au3> 
??
Error Opening File
yuser is offline  
Old 06/01/2013, 19:28   #4
 
FacePalmMan's Avatar
 
elite*gold: 0
Join Date: Jan 2013
Posts: 426
Received Thanks: 129
Quote:
Originally Posted by yuser View Post
Error Opening File
du musst die nomadmemory.au3 in den include ordner von autoit tun ansonsten klappts nicht! andere möglichkeit wäre: #include "nomadmemory.au3" statt #include <nomadmemory.au3> benutzen und die nomadmemory.au3 im ordner haben wo das script ausgeführt wird.
FacePalmMan is offline  
Old 06/02/2013, 12:13   #5
 
YatoDev's Avatar
 
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
Quote:
Originally Posted by FacePalmMan View Post
du musst die nomadmemory.au3 in den include ordner von autoit tun ansonsten klappts nicht! andere möglichkeit wäre: #include "nomadmemory.au3" statt #include <nomadmemory.au3> benutzen und die nomadmemory.au3 im ordner haben wo das script ausgeführt wird.
das ist sooo egal mwo die datei liegt ob du die jetzt mit "" oder <> bezeichnest

Nomad memory :
PHP Code:


    
#include-once
    #region _Memory
    
;=================================================================================================
    ; 
AutoIt Version:    3.1.127 (beta)
    ; 
Language:            English
    
Platform:            All Windows
    
Author:            Nomad
    
Requirements:        These functions will only work with beta.
    ;=================================================================================================
    ; 
Credits:    wOuter These functions are based on his original _Mem() functions.  But they are
    
;            easier to comprehend and more reliable.  These functions are in no way a direct copy
    
;            of his functions.  His functions only provided a foundation from which these evolved.
    ;=================================================================================================
    ;
    ; 
Functions:
    ;
    ;=================================================================================================
    ; Function:            
_MemoryOpen($iv_Pid(, $iv_DesiredAccess(, $iv_InheritHandle)))
    ; 
Description:        Opens a process and enables all possible access rights to the process.  The
    
;                    Process ID of the process is used to specify which process to open.  You must
    
;                    call this function before calling _MemoryClose(), _MemoryRead(), or _MemoryWrite().
    ; 
Parameter(s):        $iv_Pid The Process ID of the program you want to open.
    ;                    
$iv_DesiredAccess - (optionalSet to 0x1F0FFF by default, which enables all
    
;                                        possible access rights to the process specified by the
    
;                                        Process ID.
    ;                    
$if_InheritHandle - (optional) If this value is TRUEall processes created by
    
;                                        this process will inherit the access handle.  Set to TRUE
    
;                                        (1by default.  Set to 0 if you want it to be FALSE.
    ; 
Requirement(s):    A valid process ID.
    ; Return 
Value(s):     On Success Returns an array containing the Dll handle and an open handle to
    
;                                 the specified process.
    ;                    
On Failure Returns 0
    
;                    @Error No error.
    ;                             
Invalid $iv_Pid.
    ;                             
Failed to open Kernel32.dll.
    ;                             
Failed to open the specified process.
    ; 
Author(s):        Nomad
    
Note(s):
    ;=================================================================================================
    
Func _MemoryOpen($iv_Pid$iv_DesiredAccess 0x1F0FFF$if_InheritHandle 1)

        If 
Not ProcessExists($iv_PidThen
            SetError
(1)
            Return 
0
        
EndIf

        
Local $ah_Handle[2] = [DllOpen('kernel32.dll')]

        If @
Error Then
            SetError
(2)
            Return 
0
        
EndIf

        
Local $av_OpenProcess DllCall($ah_Handle[0], 'int''OpenProcess''int'$iv_DesiredAccess'int'$if_InheritHandle'int'$iv_Pid)

        If @
Error Then
            DllClose
($ah_Handle[0])
            
SetError(3)
            Return 
0
        
EndIf

        
$ah_Handle[1] = $av_OpenProcess[0]

        Return 
$ah_Handle

    EndFunc

    
;=================================================================================================
    ; Function:            
_MemoryRead($iv_Address$ah_Handle(, $sv_Type))
    ; 
Description:        Reads the value located in the memory address specified.
    ; 
Parameter(s):        $iv_Address The memory address you want to read fromIt must be in hex
    
;                                  format (0x00000000).
    ;                    
$ah_Handle An array containing the Dll handle and the handle of the open
    
;                                 process as returned by _MemoryOpen().
    ;                    
$sv_Type - (optionalThe "Type" of value you intend to read.  This is set to
    
;                                'dword'(32bit(4bytesigned integerby default.  See the help file
    
;                                for DllStructCreate for all types.
    ;                                
An example: If you want to read a word that is 15 characters in
    
;                                lengthyou would use 'char[16]'.
    ; 
Requirement(s):    The $ah_Handle returned from _MemoryOpen.
    ; Return 
Value(s):    On Success Returns the value located at the specified address.
    ;                    
On Failure Returns 0
    
;                    @Error No error.
    ;                             
Invalid $ah_Handle.
    ;                             
$sv_Type was not a string.
    ;                             
$sv_Type is an unknown data type.
    ;                             
Failed to allocate the memory needed for the DllStructure.
    ;                             
Error allocating memory for $sv_Type.
    ;                             
Failed to read from the specified process.
    ; 
Author(s):        Nomad
    
Note(s):            Values returned are in Decimal formatunless specified as 'char' typethen
    
;                    they are returned in ASCII format.  Also note that size ('char[size]') for all
    
;                    'char' types should be 1 greater than the actual size.
    ;=================================================================================================
    
Func _MemoryRead($iv_Address$ah_Handle$sv_Type 'dword')

        If 
Not IsArray($ah_HandleThen
            SetError
(1)
            Return 
0
        
EndIf

        
Local $v_Buffer DllStructCreate($sv_Type)

        If @
Error Then
            SetError
(@Error 1)
            Return 
0
        
EndIf

        
DllCall($ah_Handle[0], 'int''ReadProcessMemory''int'$ah_Handle[1], 'int'$iv_Address'ptr'DllStructGetPtr($v_Buffer), 'int'DllStructGetSize($v_Buffer), 'int''')

        If 
Not @Error Then
            Local $v_Value 
DllStructGetData($v_Buffer1)
            Return 
$v_Value
        
Else
            
SetError(6)
            Return 
0
        
EndIf

    
EndFunc

    
;=================================================================================================
    ; Function:            
_MemoryWrite($iv_Address$ah_Handle$v_Data(, $sv_Type))
    ; 
Description:        Writes data to the specified memory address.
    ; 
Parameter(s):        $iv_Address The memory address you want to write to.  It must be in hex
    
;                                  format (0x00000000).
    ;                    
$ah_Handle An array containing the Dll handle and the handle of the open
    
;                                 process as returned by _MemoryOpen().
    ;                    
$v_Data The data to be written.
    ;                    
$sv_Type - (optionalThe "Type" of value you intend to write.  This is set to
    
;                                'dword'(32bit(4bytesigned integerby default.  See the help file
    
;                                for DllStructCreate for all types.
    ;                                
An example: If you want to write a word that is 15 characters in
    
;                                lengthyou would use 'char[16]'.
    ; 
Requirement(s):    The $ah_Handle returned from _MemoryOpen.
    ; Return 
Value(s):    On Success Returns 1
    
;                    On Failure Returns 0
    
;                    @Error No error.
    ;                             
Invalid $ah_Handle.
    ;                             
$sv_Type was not a string.
    ;                             
$sv_Type is an unknown data type.
    ;                             
Failed to allocate the memory needed for the DllStructure.
    ;                             
Error allocating memory for $sv_Type.
    ;                             
$v_Data is not in the proper format to be used with the "Type"
    
;                                 selected for $sv_Type, or it is out of range.
    ;                             
Failed to write to the specified process.
    ; 
Author(s):        Nomad
    
Note(s):            Values sent must be in Decimal formatunless specified as 'char' typethen
    
;                    they must be in ASCII format.  Also note that size ('char[size]') for all
    
;                    'char' types should be 1 greater than the actual size.
    ;=================================================================================================
    
Func _MemoryWrite($iv_Address$ah_Handle$v_Data$sv_Type 'dword')

        If 
Not IsArray($ah_HandleThen
            SetError
(1)
            Return 
0
        
EndIf

        
Local $v_Buffer DllStructCreate($sv_Type)

        If @
Error Then
            SetError
(@Error 1)
            Return 
0
        
Else
            
DllStructSetData($v_Buffer1$v_Data)
            If @
Error Then
                SetError
(6)
                Return 
0
            
EndIf
        EndIf

        
DllCall($ah_Handle[0], 'int''WriteProcessMemory''int'$ah_Handle[1], 'int'$iv_Address'ptr'DllStructGetPtr($v_Buffer), 'int'DllStructGetSize($v_Buffer), 'int''')

        If 
Not @Error Then
            
Return 1
        
Else
            
SetError(7)
            Return 
0
        
EndIf

    
EndFunc

    
;=================================================================================================
    ; Function:            
_MemoryClose($ah_Handle)
    ; 
Description:        Closes the process handle opened by using _MemoryOpen().
    ; 
Parameter(s):        $ah_Handle An array containing the Dll handle and the handle of the open
    
;                                 process as returned by _MemoryOpen().
    ; 
Requirement(s):    The $ah_Handle returned from _MemoryOpen.
    ; Return 
Value(s):    On Success Returns 1
    
;                    On Failure Returns 0
    
;                    @Error No error.
    ;                             
Invalid $ah_Handle.
    ;                             
Unable to close the process handle.
    ; 
Author(s):        Nomad
    
Note(s):
    ;=================================================================================================
    
Func _MemoryClose($ah_Handle)

        If 
Not IsArray($ah_HandleThen
            SetError
(1)
            Return 
0
        
EndIf

        
DllCall($ah_Handle[0], 'int''CloseHandle''int'$ah_Handle[1])
        If 
Not @Error Then
            DllClose
($ah_Handle[0])
            Return 
1
        
Else
            
DllClose($ah_Handle[0])
            
SetError(2)
            Return 
0
        
EndIf

    
EndFunc

    
;=================================================================================================
    ; Function:            
_MemoryPointerRead ($iv_Address$ah_Handle$av_Offset(, $sv_Type))
    ; 
Description:        Reads a chain of pointers and returns an array containing the destination
    
;                    address and the data at the address.
    ; 
Parameter(s):        $iv_Address The static memory address you want to start atIt must be in
    
;                                  hex format (0x00000000).
    ;                    
$ah_Handle An array containing the Dll handle and the handle of the open
    
;                                 process as returned by _MemoryOpen().
    ;                    
$av_Offset An array of offsets for the pointers.  Each pointer must have an
    
;                                 offset.  If there is no offset for a pointerenter 0 for that
    
;                                 array dimension. (Offsets must be in decimal formatNOT hex!)
    ;                    
$sv_Type - (optionalThe "Type" of data you intend to read at the destination
    
;                                 address.  This is set to 'dword'(32bit(4bytesigned integerby
    
;                                 default.  See the help file for DllStructCreate for all types.
    ; 
Requirement(s):    The $ah_Handle returned from _MemoryOpen.
    ; Return 
Value(s):    On Success Returns an array containing the destination address and the value
    
;                                 located at the address.
    ;                    
On Failure Returns 0
    
;                    @Error No error.
    ;                             
$av_Offset is not an array.
    ;                             
Invalid $ah_Handle.
    ;                             
$sv_Type is not a string.
    ;                             
$sv_Type is an unknown data type.
    ;                             
Failed to allocate the memory needed for the DllStructure.
    ;                             
Error allocating memory for $sv_Type.
    ;                             
Failed to read from the specified process.
    ; 
Author(s):        Nomad
    
Note(s):            Values returned are in Decimal formatunless a 'char' type is selected.
    ;                    
Set $av_Offset like this:
    ;                    
$av_Offset[0] = NULL (not used)
    ;                    
$av_Offset[1] = Offset for pointer 1 (all offsets must be in Decimal)
    ;                    
$av_Offset[2] = Offset for pointer 2
    
;                    etc...
    ;                    (
The number of array dimensions determines the number of pointers)
    ;=================================================================================================
    
Func _MemoryPointerRead ($iv_Address$ah_Handle$av_Offset$sv_Type 'dword')

        If 
IsArray($av_OffsetThen
            
If IsArray($ah_HandleThen
                Local $iv_PointerCount 
UBound($av_Offset) - 1
            
Else
                
SetError(2)
                Return 
0
            
EndIf
        Else
            
SetError(1)
            Return 
0
        
EndIf

        
Local $iv_Data[2], $i
        Local $v_Buffer 
DllStructCreate('dword')

        For 
$i 0 to $iv_PointerCount

            
If $i $iv_PointerCount Then
                $v_Buffer 
DllStructCreate($sv_Type)
                If @
Error Then
                    SetError
(@Error 2)
                    Return 
0
                
EndIf

                
$iv_Address '0x' hex($iv_Data[1] + $av_Offset[$i])
                
DllCall($ah_Handle[0], 'int''ReadProcessMemory''int'$ah_Handle[1], 'int'$iv_Address'ptr'DllStructGetPtr($v_Buffer), 'int'DllStructGetSize($v_Buffer), 'int''')
                If @
Error Then
                    SetError
(7)
                    Return 
0
                
EndIf

                
$iv_Data[1] = DllStructGetData($v_Buffer1)

            ElseIf 
$i 0 Then
                DllCall
($ah_Handle[0], 'int''ReadProcessMemory''int'$ah_Handle[1], 'int'$iv_Address'ptr'DllStructGetPtr($v_Buffer), 'int'DllStructGetSize($v_Buffer), 'int''')
                If @
Error Then
                    SetError
(7)
                    Return 
0
                
EndIf

                
$iv_Data[1] = DllStructGetData($v_Buffer1)

            Else
                
$iv_Address '0x' hex($iv_Data[1] + $av_Offset[$i])
                
DllCall($ah_Handle[0], 'int''ReadProcessMemory''int'$ah_Handle[1], 'int'$iv_Address'ptr'DllStructGetPtr($v_Buffer), 'int'DllStructGetSize($v_Buffer), 'int''')
                If @
Error Then
                    SetError
(7)
                    Return 
0
                
EndIf

                
$iv_Data[1] = DllStructGetData($v_Buffer1)

            EndIf

        
Next

        $iv_Data
[0] = $iv_Address

        
Return $iv_Data

    EndFunc

    
;=================================================================================================
    ; Function:            
_MemoryPointerWrite ($iv_Address$ah_Handle$av_Offset$v_Data(, $sv_Type))
    ; 
Description:        Reads a chain of pointers and writes the data to the destination address.
    ; 
Parameter(s):        $iv_Address The static memory address you want to start atIt must be in
    
;                                  hex format (0x00000000).
    ;                    
$ah_Handle An array containing the Dll handle and the handle of the open
    
;                                 process as returned by _MemoryOpen().
    ;                    
$av_Offset An array of offsets for the pointers.  Each pointer must have an
    
;                                 offset.  If there is no offset for a pointerenter 0 for that
    
;                                 array dimension.
    ;                    
$v_Data The data to be written.
    ;                    
$sv_Type - (optionalThe "Type" of data you intend to write at the destination
    
;                                 address.  This is set to 'dword'(32bit(4bytesigned integerby
    
;                                 default.  See the help file for DllStructCreate for all types.
    ; 
Requirement(s):    The $ah_Handle returned from _MemoryOpen.
    ; Return 
Value(s):    On Success Returns the destination address.
    ;                    
On Failure Returns 0.
    
;                    @Error No error.
    ;                             
$av_Offset is not an array.
    ;                             
Invalid $ah_Handle.
    ;                             
Failed to read from the specified process.
    ;                             
$sv_Type is not a string.
    ;                             
$sv_Type is an unknown data type.
    ;                             
Failed to allocate the memory needed for the DllStructure.
    ;                             
Error allocating memory for $sv_Type.
    ;                             
$v_Data is not in the proper format to be used with the
    
;                                 "Type" selected for $sv_Type, or it is out of range.
    ;                             
Failed to write to the specified process.
    ; 
Author(s):        Nomad
    
Note(s):            Data written is in Decimal formatunless a 'char' type is selected.
    ;                    
Set $av_Offset like this:
    ;                    
$av_Offset[0] = NULL (not useddoesn't matter what's entered)
    ;                    
$av_Offset[1] = Offset for pointer 1 (all offsets must be in Decimal)
    ;                    
$av_Offset[2] = Offset for pointer 2
    
;                    etc...
    ;                    (
The number of array dimensions determines the number of pointers)
    ;=================================================================================================
    
Func _MemoryPointerWrite ($iv_Address$ah_Handle$av_Offset$v_Data$sv_Type 'dword')

        If 
IsArray($av_OffsetThen
            
If IsArray($ah_HandleThen
                Local $iv_PointerCount 
UBound($av_Offset) - 1
            
Else
                
SetError(2)
                Return 
0
            
EndIf
        Else
            
SetError(1)
            Return 
0
        
EndIf

        
Local $iv_StructData$i
        Local $v_Buffer 
DllStructCreate('dword')

        For 
$i 0 to $iv_PointerCount
            
If $i $iv_PointerCount Then
                $v_Buffer 
DllStructCreate($sv_Type)
                If @
Error Then
                    SetError
(@Error 3)
                    Return 
0
                
EndIf

                
DllStructSetData($v_Buffer1$v_Data)
                If @
Error Then
                    SetError
(8)
                    Return 
0
                
EndIf

                
$iv_Address '0x' hex($iv_StructData $av_Offset[$i])
                
DllCall($ah_Handle[0], 'int''WriteProcessMemory''int'$ah_Handle[1], 'int'$iv_Address'ptr'DllStructGetPtr($v_Buffer), 'int'DllStructGetSize($v_Buffer), 'int''')
                If @
Error Then
                    SetError
(9)
                    Return 
0
                
Else
                    Return 
$iv_Address
                
EndIf
            ElseIf 
$i 0 Then
                DllCall
($ah_Handle[0], 'int''ReadProcessMemory''int'$ah_Handle[1], 'int'$iv_Address'ptr'DllStructGetPtr($v_Buffer), 'int'DllStructGetSize($v_Buffer), 'int''')
                If @
Error Then
                    SetError
(3)
                    Return 
0
                
EndIf

                
$iv_StructData DllStructGetData($v_Buffer1)

            Else
                
$iv_Address '0x' hex($iv_StructData $av_Offset[$i])
                
DllCall($ah_Handle[0], 'int''ReadProcessMemory''int'$ah_Handle[1], 'int'$iv_Address'ptr'DllStructGetPtr($v_Buffer), 'int'DllStructGetSize($v_Buffer), 'int''')
                If @
Error Then
                    SetError
(3)
                    Return 
0
                
EndIf

                
$iv_StructData DllStructGetData($v_Buffer1)

            EndIf
        
Next

    EndFunc


    
;==================================================================================
    ; Function:            
SetPrivilege$privilege$bEnable )
    ; 
Description:        Enables (or disablesthe $privilege on the current process
    
;                   (Probablyrequires administrator privileges to run
    
;
    ; 
Author(s):        Larry (from autoitscript.com's Forum)
    ; Notes(s):
    ; http://www.autoitscript.com/forum/index.php?s=&showtopic=31248&view=findpost&p=223999
    ;==================================================================================
    Func SetPrivilege( $privilege, $bEnable )

        Const $TOKEN_ADJUST_PRIVILEGES = 0x0020
        Const $TOKEN_QUERY = 0x0008
        Const $SE_PRIVILEGE_ENABLED = 0x0002
        Local $hToken, $SP_auxret, $SP_ret, $hCurrProcess, $nTokens, $nTokenIndex, $priv
        $nTokens = 1
        $LUID = DLLStructCreate("dword;int")
        If IsArray($privilege) Then    $nTokens = UBound($privilege)
        $TOKEN_PRIVILEGES = DLLStructCreate("dword;dword[" & (3 * $nTokens) & "]")
        $NEWTOKEN_PRIVILEGES = DLLStructCreate("dword;dword[" & (3 * $nTokens) & "]")
        $hCurrProcess = DLLCall("kernel32.dll","hwnd","GetCurrentProcess")
        $SP_auxret = DLLCall("advapi32.dll","int","OpenProcessToken","hwnd",$hCurrProcess[0],   _
                "int",BitOR($TOKEN_ADJUST_PRIVILEGES,$TOKEN_QUERY),"int_ptr",0)
        If $SP_auxret[0] Then
            $hToken = $SP_auxret[3]
            DLLStructSetData($TOKEN_PRIVILEGES,1,1)
            $nTokenIndex = 1
            While $nTokenIndex <= $nTokens
                If IsArray($privilege) Then
                    $priv = $privilege[$nTokenIndex-1]
                Else
                    $priv = $privilege
                EndIf
                $ret = DLLCall("advapi32.dll","int","LookupPrivilegeValue","str","","str",$priv,   _
                        "ptr",DLLStructGetPtr($LUID))
                If $ret[0] Then
                    If $bEnable Then
                        DLLStructSetData($TOKEN_PRIVILEGES,2,$SE_PRIVILEGE_ENABLED,(3 * $nTokenIndex))
                    Else
                        DLLStructSetData($TOKEN_PRIVILEGES,2,0,(3 * $nTokenIndex))
                    EndIf
                    DLLStructSetData($TOKEN_PRIVILEGES,2,DllStructGetData($LUID,1),(3 * ($nTokenIndex-1)) + 1)
                    DLLStructSetData($TOKEN_PRIVILEGES,2,DllStructGetData($LUID,2),(3 * ($nTokenIndex-1)) + 2)
                    DLLStructSetData($LUID,1,0)
                    DLLStructSetData($LUID,2,0)
                EndIf
                $nTokenIndex += 1
            WEnd
            $ret = DLLCall("advapi32.dll","int","AdjustTokenPrivileges","hwnd",$hToken,"int",0,   _
                    "ptr",DllStructGetPtr($TOKEN_PRIVILEGES),"int",DllStructGetSize($NEWTOKEN_PRIVILEGES),   _
                    "ptr",DllStructGetPtr($NEWTOKEN_PRIVILEGES),"int_ptr",0)
            $f = DLLCall("kernel32.dll","int","GetLastError")
        EndIf
        $NEWTOKEN_PRIVILEGES=0
        $TOKEN_PRIVILEGES=0
        $LUID=0
        If $SP_auxret[0] = 0 Then Return 0
        $SP_auxret = DLLCall("kernel32.dll","int","CloseHandle","hwnd",$hToken)
        If Not $ret[0] And Not $SP_auxret[0] Then Return 0
        return $ret[0]
    EndFunc   ;==>SetPrivilege

    ;===================================================================================================

    ; Function........:  _MemoryGetBaseAddress($ah_Handle, $iHD)
    ;
    ; Description.....:  Reads the '
Allocation Base' from the open process.
    ;
    ; Parameter(s)....:  $ah_Handle - An array containing the Dll handle and the handle of the open
    ;                               process as returned by _MemoryOpen().
    ;                    $iHD - Return type:
    ;                       |0 = Hex (Default)
    ;                       |1 = Dec
    ;
    ; Requirement(s)..:  A valid process ID.
    ;
    ; Return Value(s).:  On Success - Returns the '
allocation Base' address and sets @Error to 0.
    ;                    On Failure - Returns 0 and sets @Error to:
    ;                  |1 = Invalid $ah_Handle.
    ;                  |2 = Failed to find correct allocation address.
    ;                  |3 = Failed to read from the specified process.
    ;
    ; Author(s).......:  Nomad. Szhlopp.
    ; URL.............:  http://www.autoitscript.com/forum/index.php?showtopic=78834
    ; Note(s).........:  Go to Www.CheatEngine.org for the latest version of CheatEngine.
    ;===================================================================================================

    Func _MemoryGetBaseAddress($ah_Handle, $iHexDec = 0)

        Local $iv_Address = 0x00100000
        Local $v_Buffer = DllStructCreate('
dword;dword;dword;dword;dword;dword;dword')
        Local $vData
        Local $vType

        If Not IsArray($ah_Handle) Then
            SetError(1)
            Return 0
        EndIf


        DllCall($ah_Handle[0], '
int', 'VirtualQueryEx', 'int', $ah_Handle[1], 'int', $iv_Address, 'ptr', DllStructGetPtr($v_Buffer), 'int', DllStructGetSize($v_Buffer))

        If Not @Error Then

            $vData = Hex(DllStructGetData($v_Buffer, 2))
            $vType = Hex(DllStructGetData($v_Buffer, 3))

            While $vType <> "00000080"
                DllCall($ah_Handle[0], '
int', 'VirtualQueryEx', 'int', $ah_Handle[1], 'int', $iv_Address, 'ptr', DllStructGetPtr($v_Buffer), 'int', DllStructGetSize($v_Buffer))
                $vData = Hex(DllStructGetData($v_Buffer, 2))
                $vType = Hex(DllStructGetData($v_Buffer, 3))
                If Hex($iv_Address) = "01000000" Then ExitLoop
                $iv_Address += 65536

            WEnd

            If $vType = "00000080" Then
                SetError(0)
                If $iHexDec = 1 Then
                    Return Dec($vData)
                Else
                    Return $vData
                EndIf

            Else
                SetError(2)
                Return 0
            EndIf

        Else
            SetError(3)
            Return 0
        EndIf

    EndFunc   ;==>_MemoryGetBaseAddress

    Func _MemoryModuleGetBaseAddress($iPID, $sModule)
        If Not ProcessExists($iPID) Then Return SetError(1, 0, 0)

        If Not IsString($sModule) Then Return SetError(2, 0, 0)

        Local   $PSAPI = DllOpen("psapi.dll")

        ;Get Process Handle
        Local   $hProcess
        Local   $PERMISSION = BitOR(0x0002, 0x0400, 0x0008, 0x0010, 0x0020) ; CREATE_THREAD, QUERY_INFORMATION, VM_OPERATION, VM_READ, VM_WRITE

        If $iPID > 0 Then
            Local $hProcess = DllCall("kernel32.dll", "ptr", "OpenProcess", "dword", $PERMISSION, "int", 0, "dword", $iPID)
            If $hProcess[0] Then
                $hProcess = $hProcess[0]
            EndIf
        EndIf

        ;EnumProcessModules
        Local   $Modules = DllStructCreate("ptr[1024]")
        Local   $aCall = DllCall($PSAPI, "int", "EnumProcessModules", "ptr", $hProcess, "ptr", DllStructGetPtr($Modules), "dword", DllStructGetSize($Modules), "dword*", 0)
        If $aCall[4] > 0 Then
            Local   $iModnum = $aCall[4] / 4
            Local   $aTemp
            For $i = 1 To $iModnum
                $aTemp =  DllCall($PSAPI, "dword", "GetModuleBaseNameW", "ptr", $hProcess, "ptr", Ptr(DllStructGetData($Modules, 1, $i)), "wstr", "", "dword", 260)
                If $aTemp[3] = $sModule Then
                    DllClose($PSAPI)
                    Return Ptr(DllStructGetData($Modules, 1, $i))
                EndIf
            Next
        EndIf

        DllClose($PSAPI)
        Return SetError(-1, 0, 0)

    EndFunc

    Func _MemoryScanEx($ah_Handle, $pattern, $mask, $after = False, $iv_addrStart = 0x00400000, $iv_addrEnd = 0x00FFFFFF, $step = 51200)
        If Not IsArray($ah_Handle) Then
            SetError(1)
            Return -1
        EndIf
        $pattern = StringRegExpReplace($pattern, "[^0123456789ABCDEFabcdef.]", "")
        If StringLen($pattern) = 0 Then
            SetError(2)
            Return -2
        EndIf
        If StringLen($pattern) / 2 <> StringLen($mask) Then
            SetError(4)
            Return -4
        EndIf
        Local $formatedpattern = ""
        Local $BufferPattern
        Local $BufferMask
        For $i = 0 To StringLen($mask) - 1
            $BufferPattern = StringLeft($pattern, 2)
            $pattern = StringRight($pattern, StringLen($pattern) - 2)
            $BufferMask = StringLeft($mask, 1)
            $mask = StringRight($mask, StringLen($mask) - 1)
            If $BufferMask = "?" Then $BufferPattern = ".."
            $formatedpattern = $formatedpattern & $BufferPattern
        Next
        $pattern = $formatedpattern
        For $addr = $iv_addrStart To $iv_addrEnd Step $step - (StringLen($pattern) / 2)
            StringRegExp(_MemoryRead($addr, $ah_Handle, "byte[" & $step & "]"), $pattern, 1, 2)
            If Not @error Then
                If $after Then
                    Return StringFormat("0x%.8X", $addr + ((@extended - 2) / 2))
                Else
                    Return StringFormat("0x%.8X", $addr + ((@extended - StringLen($pattern) - 2) / 2))
                EndIf
            EndIf
        Next
        SetError(3)
        Return -3
    EndFunc   ;==>_MemoryScanEx

    #endregion 
YatoDev is offline  
Thanks
2 Users
Old 06/02/2013, 13:25   #6
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
Quote:
Originally Posted by »FlutterShy™ View Post
das ist sooo egal mwo die datei liegt ob du die jetzt mit "" oder <> bezeichnest
das ist schlichtweg falsch...

je nach nutzung wird die reihenfolge, der zu durchsuchenden pfade festgelegt...

"pfad" -> script-pfad, user-definierte pfade, standard-pfad
<pfad> -> standard-pfad, user-definierte pfade, script-pfad

erstelle ich mir eine eigene udf namens array.au3 in meinem script-ordner und verwende #include <array.au3>, so wird die standard array.au3 aus dem include ordner genutzt. verwende ich stattdessen #include "array.au3", so wird meine im script-ordner liegende datei genutzt.

selbst wenn meine include-datei keinen bereits vergebenen namen hat, so komme ich, statt in einem schritt an mein include zu kommen, in drei schritten dazu...

sicherlich kann ich das ergebnis von 3+4 auch über 3-1+4+1 berechnen, allerdings sollte ich dann nicht anderen erklären, das beide wege gleich gut sind...
lolkop is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
ERROR: GAME DB INIT ERROR : [DBNETLIB][ConnectionOpen (Connect()).]Specified SQL serv
08/06/2013 - Rappelz Private Server - 5 Replies
Hallo :D:D ich habe ein Problem, und zwar kommt bei mir immer diese Fehlermeldung wenn ich den CaptainHerlockServer starte ,,ERROR: GAME DB INIT ERROR : Ungültige Autorisierungsangab." Ich habe zwar schon etwas darüber gelesen, doch nur auf englisch und die meinte etwas über die DB files :confused::confused::confused: doch ich habe keine ahnung wo ich diese Files herbekomme, bitte um schnelle Hilfe Danke! :):)
İbot Error-Error Video- Error İmages-HELP
04/10/2012 - DarkOrbit - 11 Replies
SORRY, MY ENGLİSH VERY BAD.I USE TO GOOGLE TRANSLATE :) Most people trying to ibot but in my computer İbot not working. Declared out this error everywhere but I do not get answers Here's the error Video http://youtu.be/q0fK09v-K3c
API Error Code: 100 API Error Description: Invalid parameter Error Message: redirect_
04/08/2012 - elite*gold Trading - 2 Replies
API Error Code: 100 API Error Description: Invalid parameter Error Message: redirect_uri URL is not properly formatted Das bekomme ich wenn ich ne App installiere... ich habe schon 3 Apps richtig installiert, danach kam immer das bei anderen Apps die ich installiert habe.. was heisst das? redirect_uri URL is not properly formatted



All times are GMT +1. The time now is 03:38.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.