Advertisement
Guest User

Untitled

a guest
Jun 24th, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
AutoIt 35.87 KB | None | 0 0
  1. #Region _Memory
  2. Func _MEMORYOPEN($IV_PID, $IV_DESIREDACCESS = 2035711, $IV_INHERITHANDLE = 1)
  3.     If Not ProcessExists($IV_PID) Then
  4.         SetError(1)
  5.         Return 0
  6.     EndIf
  7.     Local $AH_HANDLE[2] = [DllOpen("kernel32.dll")]
  8.     If @error Then
  9.         SetError(2)
  10.         Return 0
  11.     EndIf
  12.     Local $AV_OPENPROCESS = DllCall($AH_HANDLE[0], "int", "OpenProcess", "int", $IV_DESIREDACCESS, "int", $IV_INHERITHANDLE, "int", $IV_PID)
  13.     If @error Then
  14.         DllClose($AH_HANDLE[0])
  15.         SetError(3)
  16.         Return 0
  17.     EndIf
  18.     $AH_HANDLE[1] = $AV_OPENPROCESS[0]
  19.     Return $AH_HANDLE
  20. EndFunc
  21.  
  22.  
  23. Func _MEMORYREAD($IV_ADDRESS, $AH_HANDLE, $SV_TYPE = "dword")
  24.     If Not IsArray($AH_HANDLE) Then
  25.         SetError(1)
  26.         Return 0
  27.     EndIf
  28.     Local $V_BUFFER = DllStructCreate($SV_TYPE)
  29.     If @error Then
  30.         SetError(@error + 1)
  31.         Return 0
  32.     EndIf
  33.     DllCall($AH_HANDLE[0], "int", "ReadProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "")
  34.     If Not @error Then
  35.         Local $V_VALUE = DllStructGetData($V_BUFFER, 1)
  36.         Return $V_VALUE
  37.     Else
  38.         SetError(6)
  39.         Return 0
  40.     EndIf
  41. EndFunc
  42.  
  43.  
  44. Func _MEMORYWRITE($IV_ADDRESS, $AH_HANDLE, $V_DATA, $SV_TYPE = "dword")
  45.     If Not IsArray($AH_HANDLE) Then
  46.         SetError(1)
  47.         Return 0
  48.     EndIf
  49.     Local $V_BUFFER = DllStructCreate($SV_TYPE)
  50.     If @error Then
  51.         SetError(@error + 1)
  52.         Return 0
  53.     Else
  54.         DllStructSetData($V_BUFFER, 1, $V_DATA)
  55.         If @error Then
  56.             SetError(6)
  57.             Return 0
  58.         EndIf
  59.     EndIf
  60.     DllCall($AH_HANDLE[0], "int", "WriteProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "")
  61.     If Not @error Then
  62.         Return 1
  63.     Else
  64.         SetError(7)
  65.         Return 0
  66.     EndIf
  67. EndFunc
  68.  
  69.  
  70. Func _MEMORYCLOSE($AH_HANDLE)
  71.     If Not IsArray($AH_HANDLE) Then
  72.         SetError(1)
  73.         Return 0
  74.     EndIf
  75.     DllCall($AH_HANDLE[0], "int", "CloseHandle", "int", $AH_HANDLE[1])
  76.     If Not @error Then
  77.         DllClose($AH_HANDLE[0])
  78.         Return 1
  79.     Else
  80.         DllClose($AH_HANDLE[0])
  81.         SetError(2)
  82.         Return 0
  83.     EndIf
  84. EndFunc
  85.  
  86.  
  87. Func SETPRIVILEGE($PRIVILEGE, $BENABLE)
  88.     Const $TOKEN_ADJUST_PRIVILEGES = 32
  89.     Const $TOKEN_QUERY = 8
  90.     Const $SE_PRIVILEGE_ENABLED = 2
  91.     Local $HTOKEN, $SP_AUXRET, $SP_RET, $HCURRPROCESS, $NTOKENS, $NTOKENINDEX, $PRIV
  92.     $NTOKENS = 1
  93.     $LUID = DllStructCreate("dword;int")
  94.     If IsArray($PRIVILEGE) Then $NTOKENS = UBound($PRIVILEGE)
  95.     $TOKEN_PRIVILEGES = DllStructCreate("dword;dword[" & (3 * $NTOKENS) & "]")
  96.     $NEWTOKEN_PRIVILEGES = DllStructCreate("dword;dword[" & (3 * $NTOKENS) & "]")
  97.     $HCURRPROCESS = DllCall("kernel32.dll", "hwnd", "GetCurrentProcess")
  98.     $SP_AUXRET = DllCall("advapi32.dll", "int", "OpenProcessToken", "hwnd", $HCURRPROCESS[0], "int", BitOR($TOKEN_ADJUST_PRIVILEGES, $TOKEN_QUERY), "int*", 0)
  99.     If $SP_AUXRET[0] Then
  100.         $HTOKEN = $SP_AUXRET[3]
  101.         DllStructSetData($TOKEN_PRIVILEGES, 1, 1)
  102.         $NTOKENINDEX = 1
  103.         While $NTOKENINDEX <= $NTOKENS
  104.             If IsArray($PRIVILEGE) Then
  105.                 $PRIV = $PRIVILEGE[$NTOKENINDEX - 1]
  106.             Else
  107.                 $PRIV = $PRIVILEGE
  108.             EndIf
  109.             $RET = DllCall("advapi32.dll", "int", "LookupPrivilegeValue", "str", "", "str", $PRIV, "ptr", DllStructGetPtr($LUID))
  110.             If $RET[0] Then
  111.                 If $BENABLE Then
  112.                     DllStructSetData($TOKEN_PRIVILEGES, 2, $SE_PRIVILEGE_ENABLED, (3 * $NTOKENINDEX))
  113.                 Else
  114.                     DllStructSetData($TOKEN_PRIVILEGES, 2, 0, (3 * $NTOKENINDEX))
  115.                 EndIf
  116.                 DllStructSetData($TOKEN_PRIVILEGES, 2, DllStructGetData($LUID, 1), (3 * ($NTOKENINDEX - 1)) + 1)
  117.                 DllStructSetData($TOKEN_PRIVILEGES, 2, DllStructGetData($LUID, 2), (3 * ($NTOKENINDEX - 1)) + 2)
  118.                 DllStructSetData($LUID, 1, 0)
  119.                 DllStructSetData($LUID, 2, 0)
  120.             EndIf
  121.             $NTOKENINDEX += 1
  122.         WEnd
  123.         $RET = DllCall("advapi32.dll", "int", "AdjustTokenPrivileges", "hwnd", $HTOKEN, "int", 0, "ptr", DllStructGetPtr($TOKEN_PRIVILEGES), "int", DllStructGetSize($NEWTOKEN_PRIVILEGES), "ptr", DllStructGetPtr($NEWTOKEN_PRIVILEGES), "int*", 0)
  124.         $F = DllCall("kernel32.dll", "int", "GetLastError")
  125.     EndIf
  126.     $NEWTOKEN_PRIVILEGES = 0
  127.     $TOKEN_PRIVILEGES = 0
  128.     $LUID = 0
  129.     If $SP_AUXRET[0] = 0 Then Return 0
  130.     $SP_AUXRET = DllCall("kernel32.dll", "int", "CloseHandle", "hwnd", $HTOKEN)
  131.     If Not $RET[0] And Not $SP_AUXRET[0] Then Return 0
  132.     Return $RET[0]
  133. EndFunc
  134.  
  135.  
  136. Func _MEMORYPOINTERREAD($IV_ADDRESS, $AH_HANDLE, $AV_OFFSET, $SV_TYPE = "dword")
  137.     If IsArray($AV_OFFSET) Then
  138.         If IsArray($AH_HANDLE) Then
  139.             Local $IV_POINTERCOUNT = UBound($AV_OFFSET) - 1
  140.         Else
  141.             SetError(2)
  142.             Return 0
  143.         EndIf
  144.     Else
  145.         SetError(1)
  146.         Return 0
  147.     EndIf
  148.     Local $IV_DATA[2], $I
  149.     Local $V_BUFFER = DllStructCreate("dword")
  150.     For $I = 0 To $IV_POINTERCOUNT
  151.         If $I = $IV_POINTERCOUNT Then
  152.             $V_BUFFER = DllStructCreate($SV_TYPE)
  153.             If @error Then
  154.                 SetError(@error + 2)
  155.                 Return 0
  156.             EndIf
  157.             $IV_ADDRESS = "0x" & Hex($IV_DATA[1] + $AV_OFFSET[$I])
  158.             DllCall($AH_HANDLE[0], "int", "ReadProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "")
  159.             If @error Then
  160.                 SetError(7)
  161.                 Return 0
  162.             EndIf
  163.             $IV_DATA[1] = DllStructGetData($V_BUFFER, 1)
  164.         ElseIf $I = 0 Then
  165.             DllCall($AH_HANDLE[0], "int", "ReadProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "")
  166.             If @error Then
  167.                 SetError(7)
  168.                 Return 0
  169.             EndIf
  170.             $IV_DATA[1] = DllStructGetData($V_BUFFER, 1)
  171.         Else
  172.             $IV_ADDRESS = "0x" & Hex($IV_DATA[1] + $AV_OFFSET[$I])
  173.             DllCall($AH_HANDLE[0], "int", "ReadProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "")
  174.             If @error Then
  175.                 SetError(7)
  176.                 Return 0
  177.             EndIf
  178.             $IV_DATA[1] = DllStructGetData($V_BUFFER, 1)
  179.         EndIf
  180.     Next
  181.     $IV_DATA[0] = $IV_ADDRESS
  182.     Return $IV_DATA
  183. EndFunc
  184.  
  185.  
  186. Func _MEMORYPOINTERWRITE($IV_ADDRESS, $AH_HANDLE, $AV_OFFSET, $V_DATA, $SV_TYPE = "dword")
  187.     If IsArray($AV_OFFSET) Then
  188.         If IsArray($AH_HANDLE) Then
  189.             Local $IV_POINTERCOUNT = UBound($AV_OFFSET) - 1
  190.         Else
  191.             SetError(2)
  192.             Return 0
  193.         EndIf
  194.     Else
  195.         SetError(1)
  196.         Return 0
  197.     EndIf
  198.     Local $IV_STRUCTDATA, $I
  199.     Local $V_BUFFER = DllStructCreate("dword")
  200.     For $I = 0 To $IV_POINTERCOUNT
  201.         If $I = $IV_POINTERCOUNT Then
  202.             $V_BUFFER = DllStructCreate($SV_TYPE)
  203.             If @error Then
  204.                 SetError(@error + 3)
  205.                 Return 0
  206.             EndIf
  207.             DllStructSetData($V_BUFFER, 1, $V_DATA)
  208.             If @error Then
  209.                 SetError(8)
  210.                 Return 0
  211.             EndIf
  212.             $IV_ADDRESS = "0x" & Hex($IV_STRUCTDATA + $AV_OFFSET[$I])
  213.             DllCall($AH_HANDLE[0], "int", "WriteProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "")
  214.             If @error Then
  215.                 SetError(9)
  216.                 Return 0
  217.             Else
  218.                 Return $IV_ADDRESS
  219.             EndIf
  220.         ElseIf $I = 0 Then
  221.             DllCall($AH_HANDLE[0], "int", "ReadProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "")
  222.             If @error Then
  223.                 SetError(3)
  224.                 Return 0
  225.             EndIf
  226.             $IV_STRUCTDATA = DllStructGetData($V_BUFFER, 1)
  227.         Else
  228.             $IV_ADDRESS = "0x" & Hex($IV_STRUCTDATA + $AV_OFFSET[$I])
  229.             DllCall($AH_HANDLE[0], "int", "ReadProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "")
  230.             If @error Then
  231.                 SetError(3)
  232.                 Return 0
  233.             EndIf
  234.             $IV_STRUCTDATA = DllStructGetData($V_BUFFER, 1)
  235.         EndIf
  236.     Next
  237. EndFunc
  238.  
  239.  
  240. Func _MEMORYGETBASEADDRESS($AH_HANDLE, $IHEXDEC = 0)
  241.     Local $IV_ADDRESS = 1048576
  242.     Local $V_BUFFER = DllStructCreate("dword;dword;dword;dword;dword;dword;dword")
  243.     Local $VDATA
  244.     Local $VTYPE
  245.     If Not IsArray($AH_HANDLE) Then
  246.         SetError(1)
  247.         Return 0
  248.     EndIf
  249.     DllCall($AH_HANDLE[0], "int", "VirtualQueryEx", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER))
  250.     If Not @error Then
  251.         $VDATA = Hex(DllStructGetData($V_BUFFER, 2))
  252.         $VTYPE = Hex(DllStructGetData($V_BUFFER, 3))
  253.         While $VTYPE <> "00000080"
  254.             DllCall($AH_HANDLE[0], "int", "VirtualQueryEx", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER))
  255.             $VDATA = Hex(DllStructGetData($V_BUFFER, 2))
  256.             $VTYPE = Hex(DllStructGetData($V_BUFFER, 3))
  257.             If Hex($IV_ADDRESS) = "01000000" Then ExitLoop
  258.             $IV_ADDRESS += 65536
  259.         WEnd
  260.         If $VTYPE = "00000080" Then
  261.             SetError(0)
  262.             If $IHEXDEC = 1 Then
  263.                 Return Dec($VDATA)
  264.             Else
  265.                 Return $VDATA
  266.             EndIf
  267.         Else
  268.             SetError(2)
  269.             Return 0
  270.         EndIf
  271.     Else
  272.         SetError(3)
  273.         Return 0
  274.     EndIf
  275. EndFunc
  276.  
  277.  
  278. Func _MEMORYMODULEGETBASEADDRESS($IPID, $SMODULE)
  279.     If Not ProcessExists($IPID) Then Return SetError(1, 0, 0)
  280.     If Not IsString($SMODULE) Then Return SetError(2, 0, 0)
  281.     Local $PSAPI = DllOpen("psapi.dll")
  282.     Local $HPROCESS
  283.     Local $PERMISSION = BitOR(2, 1024, 8, 16, 32)
  284.     If $IPID > 0 Then
  285.         Local $HPROCESS = DllCall("kernel32.dll", "ptr", "OpenProcess", "dword", $PERMISSION, "int", 0, "dword", $IPID)
  286.         If $HPROCESS[0] Then
  287.             $HPROCESS = $HPROCESS[0]
  288.         EndIf
  289.     EndIf
  290.     Local $MODULES = DllStructCreate("ptr[1024]")
  291.     Local $ACALL = DllCall($PSAPI, "int", "EnumProcessModules", "ptr", $HPROCESS, "ptr", DllStructGetPtr($MODULES), "dword", DllStructGetSize($MODULES), "dword*", 0)
  292.     If $ACALL[4] > 0 Then
  293.         Local $IMODNUM = $ACALL[4] / 4
  294.         Local $ATEMP
  295.         For $I = 1 To $IMODNUM
  296.             $ATEMP = DllCall($PSAPI, "dword", "GetModuleBaseNameW", "ptr", $HPROCESS, "ptr", Ptr(DllStructGetData($MODULES, 1, $I)), "wstr", "", "dword", 260)
  297.             If $ATEMP[3] = $SMODULE Then
  298.                 DllClose($PSAPI)
  299.                 Return Ptr(DllStructGetData($MODULES, 1, $I))
  300.             EndIf
  301.         Next
  302.     EndIf
  303.     DllClose($PSAPI)
  304.     Return SetError(-1, 0, 0)
  305. EndFunc
  306.  
  307. #EndRegion
  308. Global Const $BS_GROUPBOX = 7
  309. Global Const $BS_BOTTOM = 2048
  310. Global Const $BS_CENTER = 768
  311. Global Const $BS_DEFPUSHBUTTON = 1
  312. Global Const $BS_LEFT = 256
  313. Global Const $BS_MULTILINE = 8192
  314. Global Const $BS_PUSHBOX = 10
  315. Global Const $BS_PUSHLIKE = 4096
  316. Global Const $BS_RIGHT = 512
  317. Global Const $BS_RIGHTBUTTON = 32
  318. Global Const $BS_TOP = 1024
  319. Global Const $BS_VCENTER = 3072
  320. Global Const $BS_FLAT = 32768
  321. Global Const $BS_ICON = 64
  322. Global Const $BS_BITMAP = 128
  323. Global Const $BS_NOTIFY = 16384
  324. Global Const $BS_SPLITBUTTON = 12
  325. Global Const $BS_DEFSPLITBUTTON = 13
  326. Global Const $BS_COMMANDLINK = 14
  327. Global Const $BS_DEFCOMMANDLINK = 15
  328. Global Const $BCSIF_GLYPH = 1
  329. Global Const $BCSIF_IMAGE = 2
  330. Global Const $BCSIF_STYLE = 4
  331. Global Const $BCSIF_SIZE = 8
  332. Global Const $BCSS_NOSPLIT = 1
  333. Global Const $BCSS_STRETCH = 2
  334. Global Const $BCSS_ALIGNLEFT = 4
  335. Global Const $BCSS_IMAGE = 8
  336. Global Const $BUTTON_IMAGELIST_ALIGN_LEFT = 0
  337. Global Const $BUTTON_IMAGELIST_ALIGN_RIGHT = 1
  338. Global Const $BUTTON_IMAGELIST_ALIGN_TOP = 2
  339. Global Const $BUTTON_IMAGELIST_ALIGN_BOTTOM = 3
  340. Global Const $BUTTON_IMAGELIST_ALIGN_CENTER = 4
  341. Global Const $BS_3STATE = 5
  342. Global Const $BS_AUTO3STATE = 6
  343. Global Const $BS_AUTOCHECKBOX = 3
  344. Global Const $BS_CHECKBOX = 2
  345. Global Const $BS_RADIOBUTTON = 4
  346. Global Const $BS_AUTORADIOBUTTON = 9
  347. Global Const $BS_OWNERDRAW = 11
  348. Global Const $GUI_SS_DEFAULT_BUTTON = 0
  349. Global Const $GUI_SS_DEFAULT_CHECKBOX = 0
  350. Global Const $GUI_SS_DEFAULT_GROUP = 0
  351. Global Const $GUI_SS_DEFAULT_RADIO = 0
  352. Global Const $BCM_FIRST = 5632
  353. Global Const $BCM_GETIDEALSIZE = ($BCM_FIRST + 1)
  354. Global Const $BCM_GETIMAGELIST = ($BCM_FIRST + 3)
  355. Global Const $BCM_GETNOTE = ($BCM_FIRST + 10)
  356. Global Const $BCM_GETNOTELENGTH = ($BCM_FIRST + 11)
  357. Global Const $BCM_GETSPLITINFO = ($BCM_FIRST + 8)
  358. Global Const $BCM_GETTEXTMARGIN = ($BCM_FIRST + 5)
  359. Global Const $BCM_SETDROPDOWNSTATE = ($BCM_FIRST + 6)
  360. Global Const $BCM_SETIMAGELIST = ($BCM_FIRST + 2)
  361. Global Const $BCM_SETNOTE = ($BCM_FIRST + 9)
  362. Global Const $BCM_SETSHIELD = ($BCM_FIRST + 12)
  363. Global Const $BCM_SETSPLITINFO = ($BCM_FIRST + 7)
  364. Global Const $BCM_SETTEXTMARGIN = ($BCM_FIRST + 4)
  365. Global Const $BM_CLICK = 245
  366. Global Const $BM_GETCHECK = 240
  367. Global Const $BM_GETIMAGE = 246
  368. Global Const $BM_GETSTATE = 242
  369. Global Const $BM_SETCHECK = 241
  370. Global Const $BM_SETDONTCLICK = 248
  371. Global Const $BM_SETIMAGE = 247
  372. Global Const $BM_SETSTATE = 243
  373. Global Const $BM_SETSTYLE = 244
  374. Global Const $BCN_FIRST = -1250
  375. Global Const $BCN_DROPDOWN = ($BCN_FIRST + 2)
  376. Global Const $BCN_HOTITEMCHANGE = ($BCN_FIRST + 1)
  377. Global Const $BN_CLICKED = 0
  378. Global Const $BN_PAINT = 1
  379. Global Const $BN_HILITE = 2
  380. Global Const $BN_UNHILITE = 3
  381. Global Const $BN_DISABLE = 4
  382. Global Const $BN_DOUBLECLICKED = 5
  383. Global Const $BN_SETFOCUS = 6
  384. Global Const $BN_KILLFOCUS = 7
  385. Global Const $BN_PUSHED = $BN_HILITE
  386. Global Const $BN_UNPUSHED = $BN_UNHILITE
  387. Global Const $BN_DBLCLK = $BN_DOUBLECLICKED
  388. Global Const $BST_CHECKED = 1
  389. Global Const $BST_INDETERMINATE = 2
  390. Global Const $BST_UNCHECKED = 0
  391. Global Const $BST_FOCUS = 8
  392. Global Const $BST_PUSHED = 4
  393. Global Const $BST_DONTCLICK = 128
  394. Global Const $SS_LEFT = 0
  395. Global Const $SS_CENTER = 1
  396. Global Const $SS_RIGHT = 2
  397. Global Const $SS_ICON = 3
  398. Global Const $SS_BLACKRECT = 4
  399. Global Const $SS_GRAYRECT = 5
  400. Global Const $SS_WHITERECT = 6
  401. Global Const $SS_BLACKFRAME = 7
  402. Global Const $SS_GRAYFRAME = 8
  403. Global Const $SS_WHITEFRAME = 9
  404. Global Const $SS_SIMPLE = 11
  405. Global Const $SS_LEFTNOWORDWRAP = 12
  406. Global Const $SS_BITMAP = 14
  407. Global Const $SS_ETCHEDHORZ = 16
  408. Global Const $SS_ETCHEDVERT = 17
  409. Global Const $SS_ETCHEDFRAME = 18
  410. Global Const $SS_NOPREFIX = 128
  411. Global Const $SS_NOTIFY = 256
  412. Global Const $SS_CENTERIMAGE = 512
  413. Global Const $SS_RIGHTJUST = 1024
  414. Global Const $SS_SUNKEN = 4096
  415. Global Const $GUI_SS_DEFAULT_LABEL = 0
  416. Global Const $GUI_SS_DEFAULT_GRAPHIC = 0
  417. Global Const $GUI_SS_DEFAULT_ICON = $SS_NOTIFY
  418. Global Const $GUI_SS_DEFAULT_PIC = $SS_NOTIFY
  419. Global Const $WS_TILED = 0
  420. Global Const $WS_OVERLAPPED = 0
  421. Global Const $WS_MAXIMIZEBOX = 65536
  422. Global Const $WS_MINIMIZEBOX = 131072
  423. Global Const $WS_TABSTOP = 65536
  424. Global Const $WS_GROUP = 131072
  425. Global Const $WS_SIZEBOX = 262144
  426. Global Const $WS_THICKFRAME = 262144
  427. Global Const $WS_SYSMENU = 524288
  428. Global Const $WS_HSCROLL = 1048576
  429. Global Const $WS_VSCROLL = 2097152
  430. Global Const $WS_DLGFRAME = 4194304
  431. Global Const $WS_BORDER = 8388608
  432. Global Const $WS_CAPTION = 12582912
  433. Global Const $WS_OVERLAPPEDWINDOW = 13565952
  434. Global Const $WS_TILEDWINDOW = 13565952
  435. Global Const $WS_MAXIMIZE = 16777216
  436. Global Const $WS_CLIPCHILDREN = 33554432
  437. Global Const $WS_CLIPSIBLINGS = 67108864
  438. Global Const $WS_DISABLED = 134217728
  439. Global Const $WS_VISIBLE = 268435456
  440. Global Const $WS_MINIMIZE = 536870912
  441. Global Const $WS_CHILD = 1073741824
  442. Global Const $WS_POPUP = -2147483648
  443. Global Const $WS_POPUPWINDOW = -2138570752
  444. Global Const $DS_MODALFRAME = 128
  445. Global Const $DS_SETFOREGROUND = 512
  446. Global Const $DS_CONTEXTHELP = 8192
  447. Global Const $WS_EX_ACCEPTFILES = 16
  448. Global Const $WS_EX_MDICHILD = 64
  449. Global Const $WS_EX_APPWINDOW = 262144
  450. Global Const $WS_EX_COMPOSITED = 33554432
  451. Global Const $WS_EX_CLIENTEDGE = 512
  452. Global Const $WS_EX_CONTEXTHELP = 1024
  453. Global Const $WS_EX_DLGMODALFRAME = 1
  454. Global Const $WS_EX_LEFTSCROLLBAR = 16384
  455. Global Const $WS_EX_OVERLAPPEDWINDOW = 768
  456. Global Const $WS_EX_RIGHT = 4096
  457. Global Const $WS_EX_STATICEDGE = 131072
  458. Global Const $WS_EX_TOOLWINDOW = 128
  459. Global Const $WS_EX_TOPMOST = 8
  460. Global Const $WS_EX_TRANSPARENT = 32
  461. Global Const $WS_EX_WINDOWEDGE = 256
  462. Global Const $WS_EX_LAYERED = 524288
  463. Global Const $WS_EX_CONTROLPARENT = 65536
  464. Global Const $WS_EX_LAYOUTRTL = 4194304
  465. Global Const $WS_EX_RTLREADING = 8192
  466. Global Const $WM_GETTEXTLENGTH = 14
  467. Global Const $WM_GETTEXT = 13
  468. Global Const $WM_SIZE = 5
  469. Global Const $WM_SIZING = 532
  470. Global Const $WM_USER = 1024
  471. Global Const $WM_CREATE = 1
  472. Global Const $WM_DESTROY = 2
  473. Global Const $WM_MOVE = 3
  474. Global Const $WM_ACTIVATE = 6
  475. Global Const $WM_SETFOCUS = 7
  476. Global Const $WM_KILLFOCUS = 8
  477. Global Const $WM_ENABLE = 10
  478. Global Const $WM_SETREDRAW = 11
  479. Global Const $WM_SETTEXT = 12
  480. Global Const $WM_PAINT = 15
  481. Global Const $WM_CLOSE = 16
  482. Global Const $WM_QUIT = 18
  483. Global Const $WM_ERASEBKGND = 20
  484. Global Const $WM_SYSCOLORCHANGE = 21
  485. Global Const $WM_SHOWWINDOW = 24
  486. Global Const $WM_WININICHANGE = 26
  487. Global Const $WM_DEVMODECHANGE = 27
  488. Global Const $WM_ACTIVATEAPP = 28
  489. Global Const $WM_FONTCHANGE = 29
  490. Global Const $WM_TIMECHANGE = 30
  491. Global Const $WM_CANCELMODE = 31
  492. Global Const $WM_SETCURSOR = 32
  493. Global Const $WM_MOUSEACTIVATE = 33
  494. Global Const $WM_CHILDACTIVATE = 34
  495. Global Const $WM_QUEUESYNC = 35
  496. Global Const $WM_GETMINMAXINFO = 36
  497. Global Const $WM_PAINTICON = 38
  498. Global Const $WM_ICONERASEBKGND = 39
  499. Global Const $WM_NEXTDLGCTL = 40
  500. Global Const $WM_SPOOLERSTATUS = 42
  501. Global Const $WM_DRAWITEM = 43
  502. Global Const $WM_MEASUREITEM = 44
  503. Global Const $WM_DELETEITEM = 45
  504. Global Const $WM_VKEYTOITEM = 46
  505. Global Const $WM_CHARTOITEM = 47
  506. Global Const $WM_SETFONT = 48
  507. Global Const $WM_GETFONT = 49
  508. Global Const $WM_SETHOTKEY = 50
  509. Global Const $WM_GETHOTKEY = 51
  510. Global Const $WM_QUERYDRAGICON = 55
  511. Global Const $WM_COMPAREITEM = 57
  512. Global Const $WM_GETOBJECT = 61
  513. Global Const $WM_COMPACTING = 65
  514. Global Const $WM_COMMNOTIFY = 68
  515. Global Const $WM_WINDOWPOSCHANGING = 70
  516. Global Const $WM_WINDOWPOSCHANGED = 71
  517. Global Const $WM_POWER = 72
  518. Global Const $WM_NOTIFY = 78
  519. Global Const $WM_COPYDATA = 74
  520. Global Const $WM_CANCELJOURNAL = 75
  521. Global Const $WM_INPUTLANGCHANGEREQUEST = 80
  522. Global Const $WM_INPUTLANGCHANGE = 81
  523. Global Const $WM_TCARD = 82
  524. Global Const $WM_HELP = 83
  525. Global Const $WM_USERCHANGED = 84
  526. Global Const $WM_NOTIFYFORMAT = 85
  527. Global Const $WM_CUT = 768
  528. Global Const $WM_COPY = 769
  529. Global Const $WM_PASTE = 770
  530. Global Const $WM_CLEAR = 771
  531. Global Const $WM_UNDO = 772
  532. Global Const $WM_CONTEXTMENU = 123
  533. Global Const $WM_STYLECHANGING = 124
  534. Global Const $WM_STYLECHANGED = 125
  535. Global Const $WM_DISPLAYCHANGE = 126
  536. Global Const $WM_GETICON = 127
  537. Global Const $WM_SETICON = 128
  538. Global Const $WM_NCCREATE = 129
  539. Global Const $WM_NCDESTROY = 130
  540. Global Const $WM_NCCALCSIZE = 131
  541. Global Const $WM_NCHITTEST = 132
  542. Global Const $WM_NCPAINT = 133
  543. Global Const $WM_NCACTIVATE = 134
  544. Global Const $WM_GETDLGCODE = 135
  545. Global Const $WM_SYNCPAINT = 136
  546. Global Const $WM_NCMOUSEMOVE = 160
  547. Global Const $WM_NCLBUTTONDOWN = 161
  548. Global Const $WM_NCLBUTTONUP = 162
  549. Global Const $WM_NCLBUTTONDBLCLK = 163
  550. Global Const $WM_NCRBUTTONDOWN = 164
  551. Global Const $WM_NCRBUTTONUP = 165
  552. Global Const $WM_NCRBUTTONDBLCLK = 166
  553. Global Const $WM_NCMBUTTONDOWN = 167
  554. Global Const $WM_NCMBUTTONUP = 168
  555. Global Const $WM_NCMBUTTONDBLCLK = 169
  556. Global Const $WM_KEYDOWN = 256
  557. Global Const $WM_KEYUP = 257
  558. Global Const $WM_CHAR = 258
  559. Global Const $WM_DEADCHAR = 259
  560. Global Const $WM_SYSKEYDOWN = 260
  561. Global Const $WM_SYSKEYUP = 261
  562. Global Const $WM_SYSCHAR = 262
  563. Global Const $WM_SYSDEADCHAR = 263
  564. Global Const $WM_INITDIALOG = 272
  565. Global Const $WM_COMMAND = 273
  566. Global Const $WM_SYSCOMMAND = 274
  567. Global Const $WM_TIMER = 275
  568. Global Const $WM_HSCROLL = 276
  569. Global Const $WM_VSCROLL = 277
  570. Global Const $WM_INITMENU = 278
  571. Global Const $WM_INITMENUPOPUP = 279
  572. Global Const $WM_MENUSELECT = 287
  573. Global Const $WM_MENUCHAR = 288
  574. Global Const $WM_ENTERIDLE = 289
  575. Global Const $WM_MENURBUTTONUP = 290
  576. Global Const $WM_MENUDRAG = 291
  577. Global Const $WM_MENUGETOBJECT = 292
  578. Global Const $WM_UNINITMENUPOPUP = 293
  579. Global Const $WM_MENUCOMMAND = 294
  580. Global Const $WM_CHANGEUISTATE = 295
  581. Global Const $WM_UPDATEUISTATE = 296
  582. Global Const $WM_QUERYUISTATE = 297
  583. Global Const $WM_CTLCOLORMSGBOX = 306
  584. Global Const $WM_CTLCOLOREDIT = 307
  585. Global Const $WM_CTLCOLORLISTBOX = 308
  586. Global Const $WM_CTLCOLORBTN = 309
  587. Global Const $WM_CTLCOLORDLG = 310
  588. Global Const $WM_CTLCOLORSCROLLBAR = 311
  589. Global Const $WM_CTLCOLORSTATIC = 312
  590. Global Const $WM_CTLCOLOR = 25
  591. Global Const $MN_GETHMENU = 481
  592. Global Const $NM_FIRST = 0
  593. Global Const $NM_OUTOFMEMORY = $NM_FIRST - 1
  594. Global Const $NM_CLICK = $NM_FIRST - 2
  595. Global Const $NM_DBLCLK = $NM_FIRST - 3
  596. Global Const $NM_RETURN = $NM_FIRST - 4
  597. Global Const $NM_RCLICK = $NM_FIRST - 5
  598. Global Const $NM_RDBLCLK = $NM_FIRST - 6
  599. Global Const $NM_SETFOCUS = $NM_FIRST - 7
  600. Global Const $NM_KILLFOCUS = $NM_FIRST - 8
  601. Global Const $NM_CUSTOMDRAW = $NM_FIRST - 12
  602. Global Const $NM_HOVER = $NM_FIRST - 13
  603. Global Const $NM_NCHITTEST = $NM_FIRST - 14
  604. Global Const $NM_KEYDOWN = $NM_FIRST - 15
  605. Global Const $NM_RELEASEDCAPTURE = $NM_FIRST - 16
  606. Global Const $NM_SETCURSOR = $NM_FIRST - 17
  607. Global Const $NM_CHAR = $NM_FIRST - 18
  608. Global Const $NM_TOOLTIPSCREATED = $NM_FIRST - 19
  609. Global Const $NM_LDOWN = $NM_FIRST - 20
  610. Global Const $NM_RDOWN = $NM_FIRST - 21
  611. Global Const $NM_THEMECHANGED = $NM_FIRST - 22
  612. Global Const $WM_MOUSEMOVE = 512
  613. Global Const $WM_LBUTTONDOWN = 513
  614. Global Const $WM_LBUTTONUP = 514
  615. Global Const $WM_LBUTTONDBLCLK = 515
  616. Global Const $WM_RBUTTONDOWN = 516
  617. Global Const $WM_RBUTTONUP = 517
  618. Global Const $WM_RBUTTONDBLCK = 518
  619. Global Const $WM_MBUTTONDOWN = 519
  620. Global Const $WM_MBUTTONUP = 520
  621. Global Const $WM_MBUTTONDBLCK = 521
  622. Global Const $WM_MOUSEWHEEL = 522
  623. Global Const $WM_XBUTTONDOWN = 523
  624. Global Const $WM_XBUTTONUP = 524
  625. Global Const $WM_XBUTTONDBLCLK = 525
  626. Global Const $WM_MOUSEHWHEEL = 526
  627. Global Const $PS_SOLID = 0
  628. Global Const $PS_DASH = 1
  629. Global Const $PS_DOT = 2
  630. Global Const $PS_DASHDOT = 3
  631. Global Const $PS_DASHDOTDOT = 4
  632. Global Const $PS_NULL = 5
  633. Global Const $PS_INSIDEFRAME = 6
  634. Global Const $LWA_ALPHA = 2
  635. Global Const $LWA_COLORKEY = 1
  636. Global Const $RGN_AND = 1
  637. Global Const $RGN_OR = 2
  638. Global Const $RGN_XOR = 3
  639. Global Const $RGN_DIFF = 4
  640. Global Const $RGN_COPY = 5
  641. Global Const $ERRORREGION = 0
  642. Global Const $NULLREGION = 1
  643. Global Const $SIMPLEREGION = 2
  644. Global Const $COMPLEXREGION = 3
  645. Global Const $TRANSPARENT = 1
  646. Global Const $OPAQUE = 2
  647. Global Const $CCM_FIRST = 8192
  648. Global Const $CCM_GETUNICODEFORMAT = ($CCM_FIRST + 6)
  649. Global Const $CCM_SETUNICODEFORMAT = ($CCM_FIRST + 5)
  650. Global Const $CCM_SETBKCOLOR = $CCM_FIRST + 1
  651. Global Const $CCM_SETCOLORSCHEME = $CCM_FIRST + 2
  652. Global Const $CCM_GETCOLORSCHEME = $CCM_FIRST + 3
  653. Global Const $CCM_GETDROPTARGET = $CCM_FIRST + 4
  654. Global Const $CCM_SETWINDOWTHEME = $CCM_FIRST + 11
  655. Global Const $GA_PARENT = 1
  656. Global Const $GA_ROOT = 2
  657. Global Const $GA_ROOTOWNER = 3
  658. Global Const $SM_CXSCREEN = 0
  659. Global Const $SM_CYSCREEN = 1
  660. Global Const $SM_CXVSCROLL = 2
  661. Global Const $SM_CYHSCROLL = 3
  662. Global Const $SM_CYCAPTION = 4
  663. Global Const $SM_CXBORDER = 5
  664. Global Const $SM_CYBORDER = 6
  665. Global Const $SM_CXDLGFRAME = 7
  666. Global Const $SM_CYDLGFRAME = 8
  667. Global Const $SM_CYVTHUMB = 9
  668. Global Const $SM_CXHTHUMB = 10
  669. Global Const $SM_CXICON = 11
  670. Global Const $SM_CYICON = 12
  671. Global Const $SM_CXCURSOR = 13
  672. Global Const $SM_CYCURSOR = 14
  673. Global Const $SM_CYMENU = 15
  674. Global Const $SM_CXFULLSCREEN = 16
  675. Global Const $SM_CYFULLSCREEN = 17
  676. Global Const $SM_CYKANJIWINDOW = 18
  677. Global Const $SM_MOUSEPRESENT = 19
  678. Global Const $SM_CYVSCROLL = 20
  679. Global Const $SM_CXHSCROLL = 21
  680. Global Const $SM_DEBUG = 22
  681. Global Const $SM_SWAPBUTTON = 23
  682. Global Const $SM_RESERVED1 = 24
  683. Global Const $SM_RESERVED2 = 25
  684. Global Const $SM_RESERVED3 = 26
  685. Global Const $SM_RESERVED4 = 27
  686. Global Const $SM_CXMIN = 28
  687. Global Const $SM_CYMIN = 29
  688. Global Const $SM_CXSIZE = 30
  689. Global Const $SM_CYSIZE = 31
  690. Global Const $SM_CXFRAME = 32
  691. Global Const $SM_CYFRAME = 33
  692. Global Const $SM_CXMINTRACK = 34
  693. Global Const $SM_CYMINTRACK = 35
  694. Global Const $SM_CXDOUBLECLK = 36
  695. Global Const $SM_CYDOUBLECLK = 37
  696. Global Const $SM_CXICONSPACING = 38
  697. Global Const $SM_CYICONSPACING = 39
  698. Global Const $SM_MENUDROPALIGNMENT = 40
  699. Global Const $SM_PENWINDOWS = 41
  700. Global Const $SM_DBCSENABLED = 42
  701. Global Const $SM_CMOUSEBUTTONS = 43
  702. Global Const $SM_SECURE = 44
  703. Global Const $SM_CXEDGE = 45
  704. Global Const $SM_CYEDGE = 46
  705. Global Const $SM_CXMINSPACING = 47
  706. Global Const $SM_CYMINSPACING = 48
  707. Global Const $SM_CXSMICON = 49
  708. Global Const $SM_CYSMICON = 50
  709. Global Const $SM_CYSMCAPTION = 51
  710. Global Const $SM_CXSMSIZE = 52
  711. Global Const $SM_CYSMSIZE = 53
  712. Global Const $SM_CXMENUSIZE = 54
  713. Global Const $SM_CYMENUSIZE = 55
  714. Global Const $SM_ARRANGE = 56
  715. Global Const $SM_CXMINIMIZED = 57
  716. Global Const $SM_CYMINIMIZED = 58
  717. Global Const $SM_CXMAXTRACK = 59
  718. Global Const $SM_CYMAXTRACK = 60
  719. Global Const $SM_CXMAXIMIZED = 61
  720. Global Const $SM_CYMAXIMIZED = 62
  721. Global Const $SM_NETWORK = 63
  722. Global Const $SM_CLEANBOOT = 67
  723. Global Const $SM_CXDRAG = 68
  724. Global Const $SM_CYDRAG = 69
  725. Global Const $SM_SHOWSOUNDS = 70
  726. Global Const $SM_CXMENUCHECK = 71
  727. Global Const $SM_CYMENUCHECK = 72
  728. Global Const $SM_SLOWMACHINE = 73
  729. Global Const $SM_MIDEASTENABLED = 74
  730. Global Const $SM_MOUSEWHEELPRESENT = 75
  731. Global Const $SM_XVIRTUALSCREEN = 76
  732. Global Const $SM_YVIRTUALSCREEN = 77
  733. Global Const $SM_CXVIRTUALSCREEN = 78
  734. Global Const $SM_CYVIRTUALSCREEN = 79
  735. Global Const $SM_CMONITORS = 80
  736. Global Const $SM_SAMEDISPLAYFORMAT = 81
  737. Global Const $SM_IMMENABLED = 82
  738. Global Const $SM_CXFOCUSBORDER = 83
  739. Global Const $SM_CYFOCUSBORDER = 84
  740. Global Const $SM_TABLETPC = 86
  741. Global Const $SM_MEDIACENTER = 87
  742. Global Const $SM_STARTER = 88
  743. Global Const $SM_SERVERR2 = 89
  744. Global Const $SM_CMETRICS = 90
  745. Global Const $SM_REMOTESESSION = 4096
  746. Global Const $SM_SHUTTINGDOWN = 8192
  747. Global Const $SM_REMOTECONTROL = 8193
  748. Global Const $SM_CARETBLINKINGENABLED = 8194
  749. Global Const $BLACKNESS = 66
  750. Global Const $CAPTUREBLT = 1073741824
  751. Global Const $DSTINVERT = 5570569
  752. Global Const $MERGECOPY = 12583114
  753. Global Const $MERGEPAINT = 12255782
  754. Global Const $NOMIRRORBITMAP = -2147483648
  755. Global Const $NOTSRCCOPY = 3342344
  756. Global Const $NOTSRCERASE = 1114278
  757. Global Const $PATCOPY = 15728673
  758. Global Const $PATINVERT = 5898313
  759. Global Const $PATPAINT = 16452105
  760. Global Const $SRCAND = 8913094
  761. Global Const $SRCCOPY = 13369376
  762. Global Const $SRCERASE = 4457256
  763. Global Const $SRCINVERT = 6684742
  764. Global Const $SRCPAINT = 15597702
  765. Global Const $WHITENESS = 16711778
  766. Global Const $DT_BOTTOM = 8
  767. Global Const $DT_CALCRECT = 1024
  768. Global Const $DT_CENTER = 1
  769. Global Const $DT_EDITCONTROL = 8192
  770. Global Const $DT_END_ELLIPSIS = 32768
  771. Global Const $DT_EXPANDTABS = 64
  772. Global Const $DT_EXTERNALLEADING = 512
  773. Global Const $DT_HIDEPREFIX = 1048576
  774. Global Const $DT_INTERNAL = 4096
  775. Global Const $DT_LEFT = 0
  776. Global Const $DT_MODIFYSTRING = 65536
  777. Global Const $DT_NOCLIP = 256
  778. Global Const $DT_NOFULLWIDTHCHARBREAK = 524288
  779. Global Const $DT_NOPREFIX = 2048
  780. Global Const $DT_PATH_ELLIPSIS = 16384
  781. Global Const $DT_PREFIXONLY = 2097152
  782. Global Const $DT_RIGHT = 2
  783. Global Const $DT_RTLREADING = 131072
  784. Global Const $DT_SINGLELINE = 32
  785. Global Const $DT_TABSTOP = 128
  786. Global Const $DT_TOP = 0
  787. Global Const $DT_VCENTER = 4
  788. Global Const $DT_WORDBREAK = 16
  789. Global Const $DT_WORD_ELLIPSIS = 262144
  790. Global Const $RDW_ERASE = 4
  791. Global Const $RDW_FRAME = 1024
  792. Global Const $RDW_INTERNALPAINT = 2
  793. Global Const $RDW_INVALIDATE = 1
  794. Global Const $RDW_NOERASE = 32
  795. Global Const $RDW_NOFRAME = 2048
  796. Global Const $RDW_NOINTERNALPAINT = 16
  797. Global Const $RDW_VALIDATE = 8
  798. Global Const $RDW_ERASENOW = 512
  799. Global Const $RDW_UPDATENOW = 256
  800. Global Const $RDW_ALLCHILDREN = 128
  801. Global Const $RDW_NOCHILDREN = 64
  802. Global Const $WM_RENDERFORMAT = 773
  803. Global Const $WM_RENDERALLFORMATS = 774
  804. Global Const $WM_DESTROYCLIPBOARD = 775
  805. Global Const $WM_DRAWCLIPBOARD = 776
  806. Global Const $WM_PAINTCLIPBOARD = 777
  807. Global Const $WM_VSCROLLCLIPBOARD = 778
  808. Global Const $WM_SIZECLIPBOARD = 779
  809. Global Const $WM_ASKCBFORMATNAME = 780
  810. Global Const $WM_CHANGECBCHAIN = 781
  811. Global Const $WM_HSCROLLCLIPBOARD = 782
  812. Global Const $HTERROR = -2
  813. Global Const $HTTRANSPARENT = -1
  814. Global Const $HTNOWHERE = 0
  815. Global Const $HTCLIENT = 1
  816. Global Const $HTCAPTION = 2
  817. Global Const $HTSYSMENU = 3
  818. Global Const $HTGROWBOX = 4
  819. Global Const $HTSIZE = $HTGROWBOX
  820. Global Const $HTMENU = 5
  821. Global Const $HTHSCROLL = 6
  822. Global Const $HTVSCROLL = 7
  823. Global Const $HTMINBUTTON = 8
  824. Global Const $HTMAXBUTTON = 9
  825. Global Const $HTLEFT = 10
  826. Global Const $HTRIGHT = 11
  827. Global Const $HTTOP = 12
  828. Global Const $HTTOPLEFT = 13
  829. Global Const $HTTOPRIGHT = 14
  830. Global Const $HTBOTTOM = 15
  831. Global Const $HTBOTTOMLEFT = 16
  832. Global Const $HTBOTTOMRIGHT = 17
  833. Global Const $HTBORDER = 18
  834. Global Const $HTREDUCE = $HTMINBUTTON
  835. Global Const $HTZOOM = $HTMAXBUTTON
  836. Global Const $HTSIZEFIRST = $HTLEFT
  837. Global Const $HTSIZELAST = $HTBOTTOMRIGHT
  838. Global Const $HTOBJECT = 19
  839. Global Const $HTCLOSE = 20
  840. Global Const $HTHELP = 21
  841. Global Const $COLOR_SCROLLBAR = 0
  842. Global Const $COLOR_BACKGROUND = 1
  843. Global Const $COLOR_ACTIVECAPTION = 2
  844. Global Const $COLOR_INACTIVECAPTION = 3
  845. Global Const $COLOR_MENU = 4
  846. Global Const $COLOR_WINDOW = 5
  847. Global Const $COLOR_WINDOWFRAME = 6
  848. Global Const $COLOR_MENUTEXT = 7
  849. Global Const $COLOR_WINDOWTEXT = 8
  850. Global Const $COLOR_CAPTIONTEXT = 9
  851. Global Const $COLOR_ACTIVEBORDER = 10
  852. Global Const $COLOR_INACTIVEBORDER = 11
  853. Global Const $COLOR_APPWORKSPACE = 12
  854. Global Const $COLOR_HIGHLIGHT = 13
  855. Global Const $COLOR_HIGHLIGHTTEXT = 14
  856. Global Const $COLOR_BTNFACE = 15
  857. Global Const $COLOR_BTNSHADOW = 16
  858. Global Const $COLOR_GRAYTEXT = 17
  859. Global Const $COLOR_BTNTEXT = 18
  860. Global Const $COLOR_INACTIVECAPTIONTEXT = 19
  861. Global Const $COLOR_BTNHIGHLIGHT = 20
  862. Global Const $COLOR_3DDKSHADOW = 21
  863. Global Const $COLOR_3DLIGHT = 22
  864. Global Const $COLOR_INFOTEXT = 23
  865. Global Const $COLOR_INFOBK = 24
  866. Global Const $COLOR_HOTLIGHT = 26
  867. Global Const $COLOR_GRADIENTACTIVECAPTION = 27
  868. Global Const $COLOR_GRADIENTINACTIVECAPTION = 28
  869. Global Const $COLOR_MENUHILIGHT = 29
  870. Global Const $COLOR_MENUBAR = 30
  871. Global Const $COLOR_DESKTOP = 1
  872. Global Const $COLOR_3DFACE = 15
  873. Global Const $COLOR_3DSHADOW = 16
  874. Global Const $COLOR_3DHIGHLIGHT = 20
  875. Global Const $COLOR_3DHILIGHT = 20
  876. Global Const $COLOR_BTNHILIGHT = 20
  877. Global Const $HINST_COMMCTRL = -1
  878. Global Const $IDB_STD_SMALL_COLOR = 0
  879. Global Const $IDB_STD_LARGE_COLOR = 1
  880. Global Const $IDB_VIEW_SMALL_COLOR = 4
  881. Global Const $IDB_VIEW_LARGE_COLOR = 5
  882. Global Const $IDB_HIST_SMALL_COLOR = 8
  883. Global Const $IDB_HIST_LARGE_COLOR = 9
  884. Global Const $STARTF_FORCEOFFFEEDBACK = 128
  885. Global Const $STARTF_FORCEONFEEDBACK = 64
  886. Global Const $STARTF_RUNFULLSCREEN = 32
  887. Global Const $STARTF_USECOUNTCHARS = 8
  888. Global Const $STARTF_USEFILLATTRIBUTE = 16
  889. Global Const $STARTF_USEHOTKEY = 512
  890. Global Const $STARTF_USEPOSITION = 4
  891. Global Const $STARTF_USESHOWWINDOW = 1
  892. Global Const $STARTF_USESIZE = 2
  893. Global Const $STARTF_USESTDHANDLES = 256
  894. Global Const $CDDS_PREPAINT = 1
  895. Global Const $CDDS_POSTPAINT = 2
  896. Global Const $CDDS_PREERASE = 3
  897. Global Const $CDDS_POSTERASE = 4
  898. Global Const $CDDS_ITEM = 65536
  899. Global Const $CDDS_ITEMPREPAINT = 65537
  900. Global Const $CDDS_ITEMPOSTPAINT = 65538
  901. Global Const $CDDS_ITEMPREERASE = 65539
  902. Global Const $CDDS_ITEMPOSTERASE = 65540
  903. Global Const $CDDS_SUBITEM = 131072
  904. Global Const $CDIS_SELECTED = 1
  905. Global Const $CDIS_GRAYED = 2
  906. Global Const $CDIS_DISABLED = 4
  907. Global Const $CDIS_CHECKED = 8
  908. Global Const $CDIS_FOCUS = 16
  909. Global Const $CDIS_DEFAULT = 32
  910. Global Const $CDIS_HOT = 64
  911. Global Const $CDIS_MARKED = 128
  912. Global Const $CDIS_INDETERMINATE = 256
  913. Global Const $CDIS_SHOWKEYBOARDCUES = 512
  914. Global Const $CDIS_NEARHOT = 1024
  915. Global Const $CDIS_OTHERSIDEHOT = 2048
  916. Global Const $CDIS_DROPHILITED = 4096
  917. Global Const $CDRF_DODEFAULT = 0
  918. Global Const $CDRF_NEWFONT = 2
  919. Global Const $CDRF_SKIPDEFAULT = 4
  920. Global Const $CDRF_NOTIFYPOSTPAINT = 16
  921. Global Const $CDRF_NOTIFYITEMDRAW = 32
  922. Global Const $CDRF_NOTIFYSUBITEMDRAW = 32
  923. Global Const $CDRF_NOTIFYPOSTERASE = 64
  924. Global Const $CDRF_DOERASE = 8
  925. Global Const $CDRF_SKIPPOSTPAINT = 256
  926. Global Const $GUI_SS_DEFAULT_GUI = BitOR($WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU)
  927. Global Const $GUI_EVENT_CLOSE = -3
  928. Global Const $GUI_EVENT_MINIMIZE = -4
  929. Global Const $GUI_EVENT_RESTORE = -5
  930. Global Const $GUI_EVENT_MAXIMIZE = -6
  931. Global Const $GUI_EVENT_PRIMARYDOWN = -7
  932. Global Const $GUI_EVENT_PRIMARYUP = -8
  933. Global Const $GUI_EVENT_SECONDARYDOWN = -9
  934. Global Const $GUI_EVENT_SECONDARYUP = -10
  935. Global Const $GUI_EVENT_MOUSEMOVE = -11
  936. Global Const $GUI_EVENT_RESIZED = -12
  937. Global Const $GUI_EVENT_DROPPED = -13
  938. Global Const $GUI_RUNDEFMSG = "GUI_RUNDEFMSG"
  939. Global Const $GUI_AVISTOP = 0
  940. Global Const $GUI_AVISTART = 1
  941. Global Const $GUI_AVICLOSE = 2
  942. Global Const $GUI_CHECKED = 1
  943. Global Const $GUI_INDETERMINATE = 2
  944. Global Const $GUI_UNCHECKED = 4
  945. Global Const $GUI_DROPACCEPTED = 8
  946. Global Const $GUI_NODROPACCEPTED = 4096
  947. Global Const $GUI_ACCEPTFILES = $GUI_DROPACCEPTED
  948. Global Const $GUI_SHOW = 16
  949. Global Const $GUI_HIDE = 32
  950. Global Const $GUI_ENABLE = 64
  951. Global Const $GUI_DISABLE = 128
  952. Global Const $GUI_FOCUS = 256
  953. Global Const $GUI_NOFOCUS = 8192
  954. Global Const $GUI_DEFBUTTON = 512
  955. Global Const $GUI_EXPAND = 1024
  956. Global Const $GUI_ONTOP = 2048
  957. Global Const $GUI_FONTITALIC = 2
  958. Global Const $GUI_FONTUNDER = 4
  959. Global Const $GUI_FONTSTRIKE = 8
  960. Global Const $GUI_DOCKAUTO = 1
  961. Global Const $GUI_DOCKLEFT = 2
  962. Global Const $GUI_DOCKRIGHT = 4
  963. Global Const $GUI_DOCKHCENTER = 8
  964. Global Const $GUI_DOCKTOP = 32
  965. Global Const $GUI_DOCKBOTTOM = 64
  966. Global Const $GUI_DOCKVCENTER = 128
  967. Global Const $GUI_DOCKWIDTH = 256
  968. Global Const $GUI_DOCKHEIGHT = 512
  969. Global Const $GUI_DOCKSIZE = 768
  970. Global Const $GUI_DOCKMENUBAR = 544
  971. Global Const $GUI_DOCKSTATEBAR = 576
  972. Global Const $GUI_DOCKALL = 802
  973. Global Const $GUI_DOCKBORDERS = 102
  974. Global Const $GUI_GR_CLOSE = 1
  975. Global Const $GUI_GR_LINE = 2
  976. Global Const $GUI_GR_BEZIER = 4
  977. Global Const $GUI_GR_MOVE = 6
  978. Global Const $GUI_GR_COLOR = 8
  979. Global Const $GUI_GR_RECT = 10
  980. Global Const $GUI_GR_ELLIPSE = 12
  981. Global Const $GUI_GR_PIE = 14
  982. Global Const $GUI_GR_DOT = 16
  983. Global Const $GUI_GR_PIXEL = 18
  984. Global Const $GUI_GR_HINT = 20
  985. Global Const $GUI_GR_REFRESH = 22
  986. Global Const $GUI_GR_PENSIZE = 24
  987. Global Const $GUI_GR_NOBKCOLOR = -2
  988. Global Const $GUI_BKCOLOR_DEFAULT = -1
  989. Global Const $GUI_BKCOLOR_TRANSPARENT = -2
  990. Global Const $GUI_BKCOLOR_LV_ALTERNATE = -33554432
  991. Global Const $GUI_WS_EX_PARENTDRAG = 1048576
  992. #RequireAdmin
  993. #NoTrayIcon
  994. SETPRIVILEGE("SeDebugPrivilege", 1)
  995. Global $PROCESSID = ProcessExists("WoW.exe")
  996. If $PROCESSID = 0 Then
  997.     MsgBox(4096, "Ошибка", "World of Warcraft не запущена.")
  998.     Exit 1
  999. EndIf
  1000. $WOW = _MEMORYOPEN($PROCESSID)
  1001. Global $BASE = _MEMORYMODULEGETBASEADDRESS($PROCESSID, "Wow.exe")
  1002. If $BASE = 0 Then
  1003.     MsgBox(4096, "Ошибка", "Ошибка в получении адреса")
  1004.     Exit 1
  1005. EndIf
  1006. Global Const $FLY1 = 2136504
  1007. Global Const $FLY2 = 5551734
  1008. Global Const $SPEEDOFF = 1586818
  1009. Global $FLY = 1
  1010. Global $SPEED = 3
  1011. GUICreate("Читерок 4.0.1", 145, 55, -1, -1, BitOR($WS_SYSMENU, $WS_CAPTION, $WS_POPUP, $WS_POPUPWINDOW, $WS_BORDER, $WS_MINIMIZEBOX))
  1012. $FLY_BOX = GUICtrlCreateCheckbox("Fly hack", 1, 1, $WS_EX_CLIENTEDGE)
  1013. $SPEED_BOX = GUICtrlCreateCheckbox("Speed hack", 1, 20, $WS_EX_CLIENTEDGE)
  1014. GUISetState()
  1015. CHECKPATCHSTATUS()
  1016. While 1
  1017.     $MSG = GUIGetMsg()
  1018.     Switch $MSG
  1019.         Case $GUI_EVENT_CLOSE
  1020.             Exit
  1021.         Case $FLY_BOX
  1022.             If GUICtrlRead($FLY_BOX) = $GUI_CHECKED Then
  1023.                 PATCH($FLY)
  1024.             Else
  1025.                 PATCH($FLY, 0)
  1026.             EndIf
  1027.         Case $SPEED_BOX
  1028.             If GUICtrlRead($SPEED_BOX) = $GUI_CHECKED Then
  1029.                 PATCH($SPEED)
  1030.             Else
  1031.                 PATCH($SPEED, 0)
  1032.             EndIf
  1033.     EndSwitch
  1034. WEnd
  1035.  
  1036. Func PATCH($CHECK, $START_PATCH = 1)
  1037.     $WOW = _MEMORYOPEN($PROCESSID)
  1038.     If @error Then
  1039.         MsgBox(4096, "Ошибка", "Не удалось открыть :" & $PROCESSID)
  1040.         Exit 1
  1041.     EndIf
  1042.     Switch $CHECK
  1043.         Case $FLY
  1044.             Switch $START_PATCH
  1045.                 Case 1
  1046.                     _MEMORYWRITE($BASE + $FLY1, $WOW, 235, "byte")
  1047.                     _MEMORYWRITE($BASE + $FLY2, $WOW, "0x9090", "byte[2]")
  1048.                 Case 0
  1049.                     _MEMORYWRITE($BASE + $FLY1, $WOW, 117, "byte")
  1050.                     _MEMORYWRITE($BASE + $FLY2, $WOW, "0x7465", "byte[2]")
  1051.             EndSwitch
  1052.         Case $SPEED
  1053.             Switch $START_PATCH
  1054.                 Case 1
  1055.                     _MEMORYWRITE($BASE + $SPEEDOFF, $WOW, "0xE96AFFFFFF909090", "byte[8]")
  1056.                 Case 0
  1057.                     _MEMORYWRITE($BASE + $SPEEDOFF, $WOW, "0x85F60F86F2000000", "byte[8]")
  1058.             EndSwitch
  1059.     EndSwitch
  1060.     _MEMORYCLOSE($WOW)
  1061. EndFunc
  1062.  
  1063.  
  1064. Func CHECKPATCHSTATUS()
  1065.     $WOW = _MEMORYOPEN($PROCESSID)
  1066.     If @error Then
  1067.         MsgBox(4096, "Ошибка", "Не удалось открыть :" & $PROCESSID)
  1068.         Exit 1
  1069.     EndIf
  1070.     If _MEMORYREAD($BASE + $FLY2, $WOW, "byte") == 144 Then
  1071.         GUICtrlSetState($FLY_BOX, $GUI_CHECKED)
  1072.     EndIf
  1073.     If _MEMORYREAD($BASE + $SPEEDOFF, $WOW, "byte") == 233 Then
  1074.         GUICtrlSetState($SPEED_BOX, $GUI_CHECKED)
  1075.     EndIf
  1076.     _MEMORYCLOSE($WOW)
  1077. EndFunc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement