#NoTrayIcon
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=D:\tuandoi1\game online\Silkroad\Silkroad.ico
#AutoIt3Wrapper_Res_Comment=Chúc các bạn vui vẻ với tool này ! (^_^)
#AutoIt3Wrapper_Res_Description=http://vnbot.net
#AutoIt3Wrapper_Res_Fileversion=1.0.3.0
#AutoIt3Wrapper_Res_LegalCopyright=(c) 2009 by tuandoi1
#AutoIt3Wrapper_Res_Language=1066
#AutoIt3Wrapper_Res_Field=Email|triki10802004@yahoo.com
#AutoIt3Wrapper_Res_Field=Trò chơi|Silkroad Online
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#Region
#EndRegion
;~ #include "libraly.au3"
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Include <GuiListView.au3>
Opt("GUIOnEventMode", 1)
Opt("MustDeclareVars", 1)
Opt("TrayMenuMode", 1)
GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")
Global $value1
Global $LIST
Global $I
Global $ITEM
Global $LISTVIEW
Global $TITLE1
Global $HANDLE
Global $SROPOS
Global $STATUS
Global $STRING
Global $BUTTSETTITLE
Global $HANG
Global $COT
Global $TITLE
Global $PHUT
Global $MINUTE
Global $GUI
Global $HAN
Global $PID
Global $CONTEXT
Global $EVENTCONTEC
Global $RAM
Global $PROCESS0
Global $LBL0
Global $BEGIN
Global $DIF
Global $HANDLE
Global $SETTING
Global $TRAY
Global $TRAY1
Global $TRAYSHOW
Global $TRAY2
Global $TRAYA
Global $TRAY3
Global $TRAYTHOAT
Global $RAM
Global $mem
Global $check
Global $msg
Global $SIZE
Global $STYLE = BitOR($WS_MAXIMIZEBOX, $WS_MINIMIZEBOX, $WS_SYSMENU, $WS_CAPTION, $WS_POPUP, $WS_POPUPWINDOW, $WS_GROUP, $WS_TABSTOP, $WS_BORDER, $WS_CLIPSIBLINGS)
$GUI = GUICreate("Sro Manager", 400, 320, -1, -1)
WinSetOnTop("Sro Manager", "", 1)
GUISetOnEvent($GUI_EVENT_CLOSE, "_thoat")
_STATUSRAM()
GUICtrlCreateTab(10, 10, 380, 270)
GUICtrlCreateTabItem("Manager")
$LISTVIEW = GUICtrlCreateListView("|Title |Handle |Status |MB", 20, 40, 270, 200)
_UPDATE()
_ALLBTT()
$check = GUICtrlCreateCheckbox("Show use ram",295,220,90,20)
GUICtrlCreateTabItem("Auto shutdow")
GUICtrlCreateLabel("Thời gian tắt máy tính bằng phút", 20, 70, 160, 20)
$PHUT = GUICtrlCreateInput("", 190, 65, 50, 25, BitOR(0x0080, 0x2000))
GUICtrlSetLimit(-1, 5)
GUICtrlCreateButton("Start", 180, 140, 45, 40)
;~ GUICtrlSetOnEvent(-1, "_shutdow")
Func _UPDATE()
$LIST = WinList("[Class:CLIENT]", "")
For $I = 1 To $LIST[0][0] Step 1
$PID = WinGetProcess($LIST[$I][1],"")
$mem = ProcessGetStats($PID,0)
$STATUS = WinGetState($LIST[$I][1], "")
If $STATUS == 21 Or $STATUS == 5 Then
$STRING = "Hide"
ElseIf $STATUS == 15 Or $STATUS == 47 Or $STATUS == 7 Or $STATUS == 15 Or $STATUS == 39 Then
$STRING = "Show"
ElseIf $STATUS == 23 Then
$STRING = "Minimized"
EndIf
If BitAND(GUICtrlRead($check),$GUI_CHECKED) Then
$ITEM = GUICtrlCreateListViewItem($I & "|" & $LIST[$I][0] & "|" & $LIST[$I][1] & "|" & $STRING & "|" & Int($mem[0]/(1024*1000)), $LISTVIEW) ;
Else
$ITEM = GUICtrlCreateListViewItem($I & "|" & $LIST[$I][0] & "|" & $LIST[$I][1] & "|" & $STRING & "|" , $LISTVIEW) ; & Int($mem[0]/(1024*1000)
EndIf
$HANDLE = WinGetHandle($ITEM, "")
;~ MsgBox(0,"",$LIST[$I][0] & " " & $STATUS & " " & $STRING)
;~ $STRING = ""
Next
EndFunc
_GUICtrlListView_ClickItem($LISTVIEW, 1, "left", False, 2)
Func WM_NOTIFY($HWND, $IMSG, $IWPARAM, $ILPARAM)
#forceref $hWnd, $iMsg, $iwParam
Local $HWNDFROM, $IIDFROM, $ICODE, $TNMHDR, $HWNDLISTVIEW, $TINFO
$HWNDLISTVIEW = $LISTVIEW
If Not IsHWnd($LISTVIEW) Then $HWNDLISTVIEW = GUICtrlGetHandle($LISTVIEW)
$TNMHDR = DllStructCreate($TAGNMHDR, $ILPARAM)
$HWNDFROM = HWnd(DllStructGetData($TNMHDR, "hWndFrom"))
$IIDFROM = DllStructGetData($TNMHDR, "IDFrom")
$ICODE = DllStructGetData($TNMHDR, "Code")
Switch $HWNDFROM
Case $HWNDLISTVIEW
Switch $ICODE
Case $NM_CLICK
$TINFO = DllStructCreate($TAGNMITEMACTIVATE, $ILPARAM)
$HANG = DllStructGetData($TINFO, "Index")
$COT = DllStructGetData($TINFO, "SubItem")
_SETINPUT(DllStructGetData($TINFO, "Index"))
Case $NM_DBLCLK
$TINFO = DllStructCreate($TAGNMITEMACTIVATE, $ILPARAM)
$HANG = DllStructGetData($TINFO, "Index")
$COT = DllStructGetData($TINFO, "SubItem")
_SETINPUT(DllStructGetData($TINFO, "Index"))
If $STRING == "Show" Then
_SETHIDE()
;~ MsgBox(0, "", $STRING)
ElseIf $STRING == "Hide" Then
_SETSHOW()
;~ MsgBox(0, "", $STRING)
EndIf
Case $NM_RCLICK
$TINFO = DllStructCreate($TAGNMITEMACTIVATE, $ILPARAM)
$HANG = DllStructGetData($TINFO, "Index")
$COT = DllStructGetData($TINFO, "SubItem")
_SETINPUT(DllStructGetData($TINFO, "Index"))
_MENUSTRIP()
EndSwitch
EndSwitch
EndFunc
Func _ALLBTT()
$TITLE1 = GUICtrlCreateInput("", 20, 245, 170, 25)
$BUTTSETTITLE = GUICtrlCreateButton("Rename Title", 200, 245, 90, 25)
GUICtrlSetFont(-1, 8.5, 800, 0, "Tahoma")
GUICtrlSetOnEvent(-1, "_settitle")
GUICtrlCreateButton("Show Silkroad", 295, 40, 90, 25)
GUICtrlSetFont(-1, 8.5, 800, 0, "Tahoma")
GUICtrlSetOnEvent(-1, "_setshow")
GUICtrlCreateButton("Hide Silkroad", 295, 65, 90, 25)
GUICtrlSetFont(-1, 8.5, 800, 0, "Tahoma")
GUICtrlSetOnEvent(-1, "_sethide")
GUICtrlCreateButton("Minimize", 295, 90, 90, 25)
GUICtrlSetFont(-1, 8.5, 800, 0, "Tahoma")
GUICtrlSetOnEvent(-1, "_setminize")
GUICtrlCreateButton("Kill Silkroad", 295, 115, 90, 25)
GUICtrlSetFont(-1, 8.5, 800, 0, "Tahoma")
GUICtrlSetOnEvent(-1, "_killsro")
GUICtrlCreateButton("Run Silkroad", 295, 140, 90, 25)
GUICtrlSetFont(-1, 8.5, 800, 0, "Tahoma")
GUICtrlSetOnEvent(-1, "_runsro")
GUICtrlCreateButton("Restore", 295, 165, 90, 25)
GUICtrlSetFont(-1, 8.5, 800, 0, "Tahoma")
$SIZE = GUICtrlCreateCombo("",295,195,40,15)
GUICtrlSetData(-1, "20|40|60|80|100")
GUICtrlCreateButton("Resize", 335, 194, 50, 24)
GUICtrlSetFont(-1, 8.5, 800, 0, "Tahoma")
GUICtrlSetOnEvent(-1, "_setsize")
GUICtrlCreateButton("Refresh", 295, 245, 90, 25)
GUICtrlSetFont(-1, 8.5, 800, 0, "Tahoma")
GUICtrlSetOnEvent(-1, "_ref")
EndFunc
GUISetState()
Func _STATUSRAM()
$PROCESS0 = GUICtrlCreateProgress(65, 290, 200, 20)
$LBL0 = GUICtrlCreateLabel("", 270, 292.5, 50, 20)
GUICtrlCreateLabel("Ram Use", 10, 292.5, 50, 20)
EndFunc
Func _TRAY()
TrayItemDelete($SETTING)
TrayItemDelete($TRAY)
TrayItemDelete($TRAY1)
TrayItemDelete($TRAYSHOW)
TrayItemDelete($TRAY2)
TrayItemDelete($TRAYA)
TrayItemDelete($TRAY3)
TrayItemDelete($TRAYTHOAT)
$SETTING = TrayCreateMenu("Show game")
For $I = 1 To $LIST[0][0] Step 1
$TRAY = TrayCreateItem($STRING & $LIST[$I][0], $SETTING)
TrayItemSetOnEvent(-1, "_setshow")
$LIST[$HANG + 1][0] = $TITLE
MsgBox(0, "", $LIST[$HANG + 1][0] & " " & $TITLE)
Next
$TRAY1 = TrayCreateItem("")
$TRAYSHOW = TrayCreateItem("Show tool")
$TRAY2 = TrayCreateItem("")
$TRAYA = TrayCreateItem("About")
$TRAY3 = TrayCreateItem("")
$TRAYTHOAT = TrayCreateItem("Exit")
TraySetState()
EndFunc
Func _MENUSTRIP()
$CONTEXT = GUICtrlCreateContextMenu($LISTVIEW)
GUICtrlCreateMenuItem("Show Silkroad", $CONTEXT)
GUICtrlSetOnEvent(-1, "_setshow")
GUICtrlCreateMenuItem("Hide Silkroad", $CONTEXT)
GUICtrlSetOnEvent(-1, "_sethide")
GUICtrlCreateMenuItem("Minimize Silkroad", $CONTEXT)
GUICtrlSetOnEvent(-1, "_setminize")
GUICtrlCreateMenuItem("Kill Silkroad", $CONTEXT)
GUICtrlSetOnEvent(-1, "_killsro")
GUICtrlCreateMenuItem("Run Silkroad", $CONTEXT)
GUICtrlSetOnEvent(-1, "_runsro")
GUICtrlCreateMenuItem("Restore Silkroad", $CONTEXT)
GUICtrlSetOnEvent(-1, "_Res")
EndFunc
Func _REF()
_GUICtrlListView_DeleteAllItems(GUICtrlGetHandle($LISTVIEW))
_UPDATE()
EndFunc
Func _RES()
If $LIST[0][0] > 0 Then
WinSetState($LIST[$HANG + 1][0], "", @SW_RESTORE)
Sleep(500)
EndIf
_REF()
EndFunc
Func _SETHIDE()
If $LIST[0][0] > 0 Then
WinSetState($LIST[$HANG + 1][0], "", @SW_HIDE)
Sleep(500)
EndIf
_REF()
EndFunc
Func _SETSHOW()
If $LIST[0][0] > 0 Then
WinSetState($LIST[$HANG + 1][0], "", @SW_SHOW)
Sleep(1000)
EndIf
_REF()
EndFunc
Func _SETMINIZE()
If $LIST[0][0] > 0 Then
WinSetState($LIST[$HANG + 1][0], "", @SW_MINIMIZE)
$HANDLE = WinGetHandle($LIST[$HANG + 1][0])
WINSETSTYLE($HANDLE, $STYLE)
EndIf
Sleep(500)
_REF()
EndFunc
Func _KILLSRO()
Local $PID
If $LIST[0][0] > 0 Then
$PID = WinGetProcess($LIST[$HANG + 1][0], "")
ProcessClose($PID)
Sleep(500)
EndIf
_REF()
EndFunc
Func _RUNSRO()
Local $PATH
$PATH = FileOpenDialog("Run Silkroad online", "", "Silkroad Online (Silkroad.exe)", 1 + 2, "")
Run($PATH)
EndFunc
Func _SETTITLE()
If $LIST[0][0] > 0 Then
$TITLE = GUICtrlRead($TITLE1)
_GUICtrlListView_SetItem($LISTVIEW, $TITLE, $HANG, 1)
WinSetTitle($LIST[$HANG + 1][0], "", $TITLE)
$LIST[$HANG + 1][0] = $TITLE
Sleep(500)
EndIf
_REF()
Sleep(500)
EndFunc
Func _SETINPUT($NUMBER)
If $LIST[0][0] > 0 Then
GUICtrlSetData($TITLE1, $LIST[$NUMBER + 1][0])
Return $NUMBER + 1
EndIf
EndFunc
Func _setsize()
WinMove("SRO_Client", "", @DesktopWidth / 2 - ((@DesktopWidth / 100) * GUICtrlRead($SIZE)) / 2, @DesktopHeight / 2 - ((@DesktopHeight / 100) * GUICtrlRead($SIZE)) / 2, (@DesktopWidth / 100) * GUICtrlRead($SIZE), (@DesktopHeight / 100) * GUICtrlRead($SIZE)))
EndFunc
Func _THOAT()
Exit
EndFunc
Func WINSETSTYLE($HWND, $STYLE = -1, $EXSTYLE = 0)
Local Const $GWL_STYLE = -16
Local Const $GWL_EXSTYLE = -20
Local Const $SWP_NOMOVE = 2
Local Const $SWP_NOSIZE = 1
Local Const $SWP_SHOWWINDOW = 64
Local Const $SWP_NOZORDER = 4
Local $IFLAGS = BitOR($SWP_SHOWWINDOW, $SWP_NOSIZE, $SWP_NOMOVE, $SWP_NOZORDER)
If $STYLE = -1 Then $STYLE = $WS_MINIMIZEBOX + $WS_CAPTION + $WS_POPUP + $WS_SYSMENU
DllCall("User32.dll", "int", "SetWindowLong", "hwnd", $HWND, "int", $GWL_STYLE, "int", $STYLE)
DllCall("User32.dll", "int", "SetWindowLong", "hwnd", $HWND, "int", $GWL_EXSTYLE, "int", $EXSTYLE)
DllCall("User32.dll", "int", "SetWindowPos", "hwnd", $HWND, "hwnd", 0, "int", 0, "int", 0, "int", 0, "int", 0, "int", $IFLAGS)
EndFunc
$BEGIN = TimerInit()
While 1
$msg = GUIGetMsg()
$DIF = TimerDiff($BEGIN)
If $DIF >= 2000 Then
$BEGIN = TimerInit()
;~ _REF()
TraySetIcon("Shell32.dll", -Random(0, 100, 1))
EndIf
$RAM = MemGetStats()
GUICtrlSetData($PROCESS0, $RAM[0])
GUICtrlSetData($LBL0, $RAM[0] & "%" & "/100%")
Sleep(100)
WEnd
; DeTokenise by myAut2Exe >The Open Source AutoIT/AutoHotKey script decompiler< 2.9 build(138)