Advertisement
Guest User

Untitled

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