Script: Mark Current Hand
I can't understand you guys, which hands do you try to mark if you don't save any handnumbers for marking first?
MUFC LUHG, so enter that password, script worked fine for you.
MUFC LUHG, so enter that password, script worked fine for you.
Does this work for cereus network?
no clue what is going on in this thread. but i would love this script to be set up correctly on my end.
when i press cntrl f1 a picture windows help menu appears.
i used the installer from pg1 op
Wiiiiiiiiiiiiiiiiii, got it set up reasonably easily
for this, tyty
for this, tyty
anyone have any idea what im doing wrong?
Going to try to use this script.
The script do not start get this error
http://picasaweb.google.com/11613154...434785/Pokker#
Any help would be nice
http://picasaweb.google.com/11613154...434785/Pokker#
Any help would be nice
please run this one from your postgres/bin folder
Code:
#noenv #SingleInstance, Force SetWinDelay,-1 settitlematchmode,2 StringTrimRight, thisahk, A_ScriptName, 4 SetWorkingDir %A_ScriptDir% Menu, Tray, NoStandard Menu, Tray, Add, Reload, Reload Menu, Tray, Add, Change Settings, GetMHSettings() Menu, Tray, Add, Suspend Hotkeys, SuspendHotkey Menu, Tray, Add, Exit, Exit Gui, Submit IniRead, StarsHHLogFolderPath, %thisahk%.ini, LogFolder, StarsHHPath, %A_Space% IniRead, FullTiltHHLogFolderPath, %thisahk%.ini, LogFolder, FullTiltHHPath, %A_Space% IniRead, PostgresLogPath, %thisahk%.ini, LogFolder, postgrespath, %A_Space% IniRead, postgresuser, %thisahk%.ini, LogFolder, postgresuser, %A_Space% IniRead, postgresdb, %thisahk%.ini, LogFolder, postgresdb, %A_Space% IniRead, HK_mark, %thisahk%.ini, LogFolder, HK_mark, %A_Space% IniRead, HK_sql , %thisahk%.ini, LogFolder, HK_sql , %A_Space% If (!StarsHHLogFolderPath or !FullTiltHHLogFolderPath or !PostgresLogPath or !postgresuser or !postgresdb or !HK_mark or !HK_sql) gosub GetMHSettings() HotKey, %HK_mark%, l_markhand HotKey, %HK_sql%, l_processsql IfExist, gamenumbers.txt { MsgBox, 4,, Delete existing file gamenumbers.txt? (press Yes or No) IfMsgBox Yes FileDelete, gamenumbers.txt } settimer,checksize,100 return ^2:: Suspend Return l_markhand: winget,id,id,A wingetclass,class,ahk_id%id% if class=PokerStarsTableFrameClass { site=Stars dir:=StarsHHLogFolderPath } else if class=QWidget { site=FullTilt dir:=FullTiltHHLogFolderPath } else site= if site { filename:=HHFile(id, dir ,site) FileGetSize, FileSize, % filename if !FileSize FileSize:=0 listadd(filelist, id . "-" . FileSize) } return l_processsql: IfExist, temp.txt FileDelete, temp.txt IfExist, temp.bat FileDelete, temp.bat FileRead, numbers, gamenumbers.txt sql1=Update pokerhands sql2= Set mark_id = 1 sql3= Where gamenumber = sql4=AND handtimestamp > localtimestamp - interval '1 days'; sql5=Update pokerhands_hero Loop, Parse, numbers, `n, { if A_loopField { FileAppend, %sql1% %sql2% %sql3% %A_loopField% %sql4%`n, temp.txt FileAppend, %sql5% %sql2% %sql3% %A_loopField% %sql4%`n, temp.txt } } FileAppend, psql.exe %postgresdb% %postgresuser% <temp.txt`npause`n, temp.bat run temp.bat return ;----------------------------------------------------------------------------------------------------- checksize: Loop, Parse, filelist, `, { stringsplit,tab,A_loopField,- wingetclass,class,ahk_id%tab1% if class=PokerStarsTableFrameClass { site=Stars dir:=StarsHHLogFolderPath } else if class=QWidget { site=FullTilt dir:=FullTiltHHLogFolderPath } filename:=HHFile(tab1, dir ,site) FileGetSize, FileSize, % filename if FileSize if FileSize!=%tab2% { num:=gethhnumber(tab1,site) FileAppend, %num%`n, gamenumbers.txt listDelItem(filelist, A_loopField) } } return ;----------------------------------------------------------------------------------------------------- gethhnumber(winid,site) { global StarsHHLogFolderPath,FullTiltHHLogFolderPath if site=Stars path=%StarsHHLogFolderPath% else path=%FullTiltHHLogFolderPath% hh:=LastHH(winid,path,site) Loop, Parse, hh, `n { if instr(A_loopfield,"Game #") { stringtrimleft,num,A_loopfield,instr(A_loopfield,"#") stringleft,num,num,instr(num,":")-1 break } } return num } ;----------------------------------------------------------------------------------------------------- HHFile(win, dir, site) { if site=Stars ext=HH else ext=FT title := WinGetTitle(win) if !(instr(title,"Tournament")>0 OR instr(title,"Sit & Go")>0) { stringleft,file,title, InStr(title, "-","",0)-2 file := ext . SubStr(a_now, 1, 8) . A_space . file StringReplace, file, file, /,-, if site=Stars { StringReplace, file, file, USD -,- USD, StringReplace, file, file, EUR -,- EUR, } } else if site=Stars { stringtrimleft,file,title,instr(title,"Tournament")+10 stringleft,file,file,InStr(file, A_space)-1 } else { stringtrimleft,file,title,instr(title,"(")-1 stringleft,file,file,InStr(file, "-")-2 } loop %dir%\*.txt { if instr(A_LoopFileName,file)>0 & !instr(A_LoopFileName,"Summary")>0 return dir "\" A_LoopFileName } EnvAdd, date, -1, d stringleft,file,title, InStr(title, "-","",0)-2 file := ext . SubStr(date, 1, 8) . A_space . file StringReplace, file, file, /,-, if site=Stars { StringReplace, file, file, USD -,- USD, StringReplace, file, file, EUR -,- EUR, } loop %dir%\*.txt { if instr(A_LoopFileName,file) return dir "\" A_LoopFileName } EnvAdd, date, +1, d stringleft,file,title, InStr(title, "-","",0)-2 file := ext . SubStr(date, 1, 8) . A_space . file StringReplace, file, file, /,-, if site=Stars { StringReplace, file, file, USD -,- USD, StringReplace, file, file, EUR -,- EUR, } loop %dir%\*.txt { if instr(A_LoopFileName,file) return dir "\" A_LoopFileName } } return ;----------------------------------------------------------------------------------------------------- LastHH(win, dir, site) { if site=Stars game=PokerStars Game # else game=Full Tilt Poker Game # file@name:=HHFile(win, dir ,site) FileRead, hh, %file@name% if !instr(hh,"seat") { FileGetSize file@size, %file@name% FileRead file?buffer, %file@name% VarSetCapacity(hh, file@size / 2 + 1, 0) r := DllCall("WideCharToMultiByte" , "UInt", 0 ; CodePage: CP_ACP=0 (current Ansi), CP_UTF7=65000, CP_UTF8=65001 , "UInt", 0 ; dwFlags , "Str", file?buffer ; LPCWSTR lpWideCharStr , "Int", file@size / 2 ; cchWideChar: -1=null terminated , "Str", hh ; LPSTR lpMultiByteStr , "Int", file@size / 2 + 1 ; cbMultiByte: 0 to get required size , "UInt",0 ; LPCSTR lpDefaultChar , "UInt", 0) ; LPBOOL lpUsedDefaultChar } StringTrimLeft, hh, hh, InStr(hh, game, "", 0)-1 if instr(hh,"SUMMARY") Stringleft, hh, hh, InStr(hh, "*** SUMMARY", "", 0)-1 return hh } ;----------------------------------------------------------------------------------------------------- WinGetTitle(win) { WinGetTitle, title, ahk_id%win% return title } ;----------------------------------------------------------------------------------------------------- StrRep(str,char,rep_char="",all=1) { StringReplace,str,str,%char%,%rep_char%,% all ? "useErrorLevel" : 0 return str } ;----------------------------------------------------------------------------------------------------- StarsHHFolderSelect: FileSelectFolder, SelectedFolder, *%ProgramFiles%\PokerStars\,, Select the folder with the PokerStars handhistory files Folder := RegExReplace(Folder, "\\$") ; Removes the trailing backslash, if present. If SelectedFolder <> ;the user selected a folder { GuiControl,, StarsHHLogFolderPath, %SelectedFolder% StarsHHLogFolderPath := SelectedFolder IniWrite, %StarsHHLogFolderPath%, %thisahk%.ini, LogFolder, StarsHHPath Gui, Submit, NoHide } return ;----------------------------------------------------------------------------------------------------- FullTiltHHFolderSelect: FileSelectFolder, SelectedFolder, *%ProgramFiles%\Full Tilt Poker\,, Select the folder with the FullTilt handhistory files Folder := RegExReplace(Folder, "\\$") ; Removes the trailing backslash, if present. If SelectedFolder <> ;the user selected a folder { GuiControl,, FullTiltHHLogFolderPath, %SelectedFolder% FullTiltHHLogFolderPath := SelectedFolder IniWrite, %FullTiltHHLogFolderPath%, %thisahk%.ini, LogFolder, FullTiltHHPath Gui, Submit, NoHide } return ;----------------------------------------------------------------------------------------------------- PostgresBinFolderSelect: FileSelectFolder, SelectedFolder, *%ProgramFiles%\PostgreSQL\,, Select the folder with the Postgres binary files Folder := RegExReplace(Folder, "\\$") ; Removes the trailing backslash, if present. If SelectedFolder <> ;the user selected a folder { GuiControl,, PostgresLogPath, %SelectedFolder% PostgresLogPath := SelectedFolder IniWrite, %PostgresLogPath%, %thisahk%.ini, LogFolder, postgrespath Gui, Submit, NoHide } return ;----------------------------------------------------------------------------------------------------- postgresuserselect: InputBox, postgresuser,, enter Postgres Username IniWrite, %postgresuser%, %thisahk%.ini, LogFolder, postgresuser return ;----------------------------------------------------------------------------------------------------- postgresdbselect: InputBox, postgresdb,, enter Postgres Datbase Name IniWrite, %postgresdb%, %thisahk%.ini, LogFolder, postgresdb return ;----------------------------------------------------------------------------------------------------- GetMHSettings(): { gosub SuspendHotkey Gui, Add, Text, x10 y5 w120 h20 Center, Select Folder Location Gui, Add, Text, x140 y5 w150 h20 Center, Folder Location Gui, Add, Button, x5 y20 w150 h20 gPostgresBinFolderSelect center, Postgres Binary Folder Gui, Add, Edit, x160 y20 w520 h20 vPostgresLogpath, %PostgresLogpath% Gui, Add, Button, x5 y40 w150 h20 gStarsHHFolderSelect center, Poker Stars HH Folder Gui, Add, Edit, x160 y40 w520 h20 vStarsHHLogFolderPath, %StarsHHLogFolderPath% Gui, Add, Button, x5 y60 w150 h20 gFullTiltHHFolderSelect center, Full Tilt HH Folder Gui, Add, Edit, x160 y60 w520 h20 vFullTiltHHLogFolderPath, %FullTiltHHLogFolderPath% Gui, Add, Text, x5 y120 w150 h20 right, Postgres User Name: Gui, Add, Edit, x160 y120 w100 h20 vpostgresuser, %postgresuser% Gui, Add, Text, x5 y140 w150 h20 right, Postgres Database: Gui, Add, Edit, x160 y140 w100 h20 vpostgresdb, %postgresdb% Gui, Add, Text, x5 y160 w150 h20 right, Hotkey "mark current Hand" : Gui, Add, HotKey, x160 y160 w100 h20 vHK_mark, %HK_mark% Gui, Add, Text, x5 y180 w150 h20 right, Hotkey "process sql": Gui, Add, HotKey, x160 y180 w100 h20 vHK_sql, %HK_sql% Gui, Add, Button, x360 y180 w40 h30, OK ; The label ButtonOK (if it exists) will be run when the button is pressed. Gui, Show,, Markhand return ButtonOK: GuiClose: GuiEscape: Gui, Submit IniWrite, %postgresdb%, %thisahk%.ini, LogFolder, postgresdb IniWrite, %postgresuser%, %thisahk%.ini, LogFolder, postgresuser IniWrite, %PostgresLogPath%, %thisahk%.ini, LogFolder, postgrespath IniWrite, %FullTiltHHLogFolderPath%, %thisahk%.ini, LogFolder, FullTiltHHPath IniWrite, %StarsHHLogFolderPath%, %thisahk%.ini, LogFolder, StarsHHPath IniWrite, %HK_sql%, %thisahk%.ini, LogFolder, HK_sql IniWrite, %HK_mark%, %thisahk%.ini, LogFolder, HK_mark Gui, Destroy gosub reload return } ;----------------------------------------------------------------------------------------------------- SuspendHotkey: SendInPut, {CTRLDOWN}2{CTRLUP} return ;----------------------------------------------------------------------------------------------------- ;----------------------------------------------------------------------------------------------------- listAdd( byRef list, item, del="," ) { list:=( list!="" ? ( list . del . item ) : item ) return list } ;----------------------------------------------------------------------------------------------------- listDelItem( byRef list, item, del=",") { ifEqual, item,, return list list:=del . list . del StringReplace, list, list, %item%%del% StringTrimLeft, list, list, 1 StringTrimRight, list, list, 1 return list } ;----------------------------------------------------------------------------------------------------- reload: reload return ;----------------------------------------------------------------------------------------------------- Exit: exitapp return ;-----------------------------------------------------------------------------------------------------
please run this one from your postgres/bin folder
Code:
#noenv #SingleInstance, Force SetWinDelay,-1 settitlematchmode,2 StringTrimRight, thisahk, A_ScriptName, 4 SetWorkingDir %A_ScriptDir% Menu, Tray, NoStandard Menu, Tray, Add, Reload, Reload Menu, Tray, Add, Change Settings, GetMHSettings() Menu, Tray, Add, Suspend Hotkeys, SuspendHotkey Menu, Tray, Add, Exit, Exit Gui, Submit IniRead, StarsHHLogFolderPath, %thisahk%.ini, LogFolder, StarsHHPath, %A_Space% IniRead, FullTiltHHLogFolderPath, %thisahk%.ini, LogFolder, FullTiltHHPath, %A_Space% IniRead, PostgresLogPath, %thisahk%.ini, LogFolder, postgrespath, %A_Space% IniRead, postgresuser, %thisahk%.ini, LogFolder, postgresuser, %A_Space% IniRead, postgresdb, %thisahk%.ini, LogFolder, postgresdb, %A_Space% IniRead, HK_mark, %thisahk%.ini, LogFolder, HK_mark, %A_Space% IniRead, HK_sql , %thisahk%.ini, LogFolder, HK_sql , %A_Space% If (!StarsHHLogFolderPath or !FullTiltHHLogFolderPath or !PostgresLogPath or !postgresuser or !postgresdb or !HK_mark or !HK_sql) gosub GetMHSettings() HotKey, %HK_mark%, l_markhand HotKey, %HK_sql%, l_processsql IfExist, gamenumbers.txt { MsgBox, 4,, Delete existing file gamenumbers.txt? (press Yes or No) IfMsgBox Yes FileDelete, gamenumbers.txt } settimer,checksize,100 return ^2:: Suspend Return l_markhand: winget,id,id,A wingetclass,class,ahk_id%id% if class=PokerStarsTableFrameClass { site=Stars dir:=StarsHHLogFolderPath } else if class=QWidget { site=FullTilt dir:=FullTiltHHLogFolderPath } else site= if site { filename:=HHFile(id, dir ,site) FileGetSize, FileSize, % filename if !FileSize FileSize:=0 listadd(filelist, id . "-" . FileSize) } return l_processsql: IfExist, temp.txt FileDelete, temp.txt IfExist, temp.bat FileDelete, temp.bat FileRead, numbers, gamenumbers.txt sql1=Update pokerhands sql2= Set mark_id = 1 sql3= Where gamenumber = sql4=AND handtimestamp > localtimestamp - interval '1 days'; sql5=Update pokerhands_hero Loop, Parse, numbers, `n, { if A_loopField { FileAppend, %sql1% %sql2% %sql3% %A_loopField% %sql4%`n, temp.txt FileAppend, %sql5% %sql2% %sql3% %A_loopField% %sql4%`n, temp.txt } } FileAppend, psql.exe %postgresdb% %postgresuser% <temp.txt`npause`n, temp.bat run temp.bat return ;----------------------------------------------------------------------------------------------------- checksize: Loop, Parse, filelist, `, { stringsplit,tab,A_loopField,- wingetclass,class,ahk_id%tab1% if class=PokerStarsTableFrameClass { site=Stars dir:=StarsHHLogFolderPath } else if class=QWidget { site=FullTilt dir:=FullTiltHHLogFolderPath } filename:=HHFile(tab1, dir ,site) FileGetSize, FileSize, % filename if FileSize if FileSize!=%tab2% { num:=gethhnumber(tab1,site) FileAppend, %num%`n, gamenumbers.txt listDelItem(filelist, A_loopField) } } return ;----------------------------------------------------------------------------------------------------- gethhnumber(winid,site) { global StarsHHLogFolderPath,FullTiltHHLogFolderPath if site=Stars path=%StarsHHLogFolderPath% else path=%FullTiltHHLogFolderPath% hh:=LastHH(winid,path,site) Loop, Parse, hh, `n { if instr(A_loopfield,"Game #") { stringtrimleft,num,A_loopfield,instr(A_loopfield,"#") stringleft,num,num,instr(num,":")-1 break } } return num } ;----------------------------------------------------------------------------------------------------- HHFile(win, dir, site) { if site=Stars ext=HH else ext=FT title := WinGetTitle(win) if !(instr(title,"Tournament")>0 OR instr(title,"Sit & Go")>0) { stringleft,file,title, InStr(title, "-","",0)-2 file := ext . SubStr(a_now, 1, 8) . A_space . file StringReplace, file, file, /,-, if site=Stars { StringReplace, file, file, USD -,- USD, StringReplace, file, file, EUR -,- EUR, } } else if site=Stars { stringtrimleft,file,title,instr(title,"Tournament")+10 stringleft,file,file,InStr(file, A_space)-1 } else { stringtrimleft,file,title,instr(title,"(")-1 stringleft,file,file,InStr(file, "-")-2 } loop %dir%\*.txt { if instr(A_LoopFileName,file)>0 & !instr(A_LoopFileName,"Summary")>0 return dir "\" A_LoopFileName } EnvAdd, date, -1, d stringleft,file,title, InStr(title, "-","",0)-2 file := ext . SubStr(date, 1, 8) . A_space . file StringReplace, file, file, /,-, if site=Stars { StringReplace, file, file, USD -,- USD, StringReplace, file, file, EUR -,- EUR, } loop %dir%\*.txt { if instr(A_LoopFileName,file) return dir "\" A_LoopFileName } EnvAdd, date, +1, d stringleft,file,title, InStr(title, "-","",0)-2 file := ext . SubStr(date, 1, 8) . A_space . file StringReplace, file, file, /,-, if site=Stars { StringReplace, file, file, USD -,- USD, StringReplace, file, file, EUR -,- EUR, } loop %dir%\*.txt { if instr(A_LoopFileName,file) return dir "\" A_LoopFileName } } return ;----------------------------------------------------------------------------------------------------- LastHH(win, dir, site) { if site=Stars game=PokerStars Game # else game=Full Tilt Poker Game # file@name:=HHFile(win, dir ,site) FileRead, hh, %file@name% if !instr(hh,"seat") { FileGetSize file@size, %file@name% FileRead file?buffer, %file@name% VarSetCapacity(hh, file@size / 2 + 1, 0) r := DllCall("WideCharToMultiByte" , "UInt", 0 ; CodePage: CP_ACP=0 (current Ansi), CP_UTF7=65000, CP_UTF8=65001 , "UInt", 0 ; dwFlags , "Str", file?buffer ; LPCWSTR lpWideCharStr , "Int", file@size / 2 ; cchWideChar: -1=null terminated , "Str", hh ; LPSTR lpMultiByteStr , "Int", file@size / 2 + 1 ; cbMultiByte: 0 to get required size , "UInt",0 ; LPCSTR lpDefaultChar , "UInt", 0) ; LPBOOL lpUsedDefaultChar } StringTrimLeft, hh, hh, InStr(hh, game, "", 0)-1 if instr(hh,"SUMMARY") Stringleft, hh, hh, InStr(hh, "*** SUMMARY", "", 0)-1 return hh } ;----------------------------------------------------------------------------------------------------- WinGetTitle(win) { WinGetTitle, title, ahk_id%win% return title } ;----------------------------------------------------------------------------------------------------- StrRep(str,char,rep_char="",all=1) { StringReplace,str,str,%char%,%rep_char%,% all ? "useErrorLevel" : 0 return str } ;----------------------------------------------------------------------------------------------------- StarsHHFolderSelect: FileSelectFolder, SelectedFolder, *%ProgramFiles%\PokerStars\,, Select the folder with the PokerStars handhistory files Folder := RegExReplace(Folder, "\\$") ; Removes the trailing backslash, if present. If SelectedFolder <> ;the user selected a folder { GuiControl,, StarsHHLogFolderPath, %SelectedFolder% StarsHHLogFolderPath := SelectedFolder IniWrite, %StarsHHLogFolderPath%, %thisahk%.ini, LogFolder, StarsHHPath Gui, Submit, NoHide } return ;----------------------------------------------------------------------------------------------------- FullTiltHHFolderSelect: FileSelectFolder, SelectedFolder, *%ProgramFiles%\Full Tilt Poker\,, Select the folder with the FullTilt handhistory files Folder := RegExReplace(Folder, "\\$") ; Removes the trailing backslash, if present. If SelectedFolder <> ;the user selected a folder { GuiControl,, FullTiltHHLogFolderPath, %SelectedFolder% FullTiltHHLogFolderPath := SelectedFolder IniWrite, %FullTiltHHLogFolderPath%, %thisahk%.ini, LogFolder, FullTiltHHPath Gui, Submit, NoHide } return ;----------------------------------------------------------------------------------------------------- PostgresBinFolderSelect: FileSelectFolder, SelectedFolder, *%ProgramFiles%\PostgreSQL\,, Select the folder with the Postgres binary files Folder := RegExReplace(Folder, "\\$") ; Removes the trailing backslash, if present. If SelectedFolder <> ;the user selected a folder { GuiControl,, PostgresLogPath, %SelectedFolder% PostgresLogPath := SelectedFolder IniWrite, %PostgresLogPath%, %thisahk%.ini, LogFolder, postgrespath Gui, Submit, NoHide } return ;----------------------------------------------------------------------------------------------------- postgresuserselect: InputBox, postgresuser,, enter Postgres Username IniWrite, %postgresuser%, %thisahk%.ini, LogFolder, postgresuser return ;----------------------------------------------------------------------------------------------------- postgresdbselect: InputBox, postgresdb,, enter Postgres Datbase Name IniWrite, %postgresdb%, %thisahk%.ini, LogFolder, postgresdb return ;----------------------------------------------------------------------------------------------------- GetMHSettings(): { gosub SuspendHotkey Gui, Add, Text, x10 y5 w120 h20 Center, Select Folder Location Gui, Add, Text, x140 y5 w150 h20 Center, Folder Location Gui, Add, Button, x5 y20 w150 h20 gPostgresBinFolderSelect center, Postgres Binary Folder Gui, Add, Edit, x160 y20 w520 h20 vPostgresLogpath, %PostgresLogpath% Gui, Add, Button, x5 y40 w150 h20 gStarsHHFolderSelect center, Poker Stars HH Folder Gui, Add, Edit, x160 y40 w520 h20 vStarsHHLogFolderPath, %StarsHHLogFolderPath% Gui, Add, Button, x5 y60 w150 h20 gFullTiltHHFolderSelect center, Full Tilt HH Folder Gui, Add, Edit, x160 y60 w520 h20 vFullTiltHHLogFolderPath, %FullTiltHHLogFolderPath% Gui, Add, Text, x5 y120 w150 h20 right, Postgres User Name: Gui, Add, Edit, x160 y120 w100 h20 vpostgresuser, %postgresuser% Gui, Add, Text, x5 y140 w150 h20 right, Postgres Database: Gui, Add, Edit, x160 y140 w100 h20 vpostgresdb, %postgresdb% Gui, Add, Text, x5 y160 w150 h20 right, Hotkey "mark current Hand" : Gui, Add, HotKey, x160 y160 w100 h20 vHK_mark, %HK_mark% Gui, Add, Text, x5 y180 w150 h20 right, Hotkey "process sql": Gui, Add, HotKey, x160 y180 w100 h20 vHK_sql, %HK_sql% Gui, Add, Button, x360 y180 w40 h30, OK ; The label ButtonOK (if it exists) will be run when the button is pressed. Gui, Show,, Markhand return ButtonOK: GuiClose: GuiEscape: Gui, Submit IniWrite, %postgresdb%, %thisahk%.ini, LogFolder, postgresdb IniWrite, %postgresuser%, %thisahk%.ini, LogFolder, postgresuser IniWrite, %PostgresLogPath%, %thisahk%.ini, LogFolder, postgrespath IniWrite, %FullTiltHHLogFolderPath%, %thisahk%.ini, LogFolder, FullTiltHHPath IniWrite, %StarsHHLogFolderPath%, %thisahk%.ini, LogFolder, StarsHHPath IniWrite, %HK_sql%, %thisahk%.ini, LogFolder, HK_sql IniWrite, %HK_mark%, %thisahk%.ini, LogFolder, HK_mark Gui, Destroy gosub reload return } ;----------------------------------------------------------------------------------------------------- SuspendHotkey: SendInPut, {CTRLDOWN}2{CTRLUP} return ;----------------------------------------------------------------------------------------------------- ;----------------------------------------------------------------------------------------------------- listAdd( byRef list, item, del="," ) { list:=( list!="" ? ( list . del . item ) : item ) return list } ;----------------------------------------------------------------------------------------------------- listDelItem( byRef list, item, del=",") { ifEqual, item,, return list list:=del . list . del StringReplace, list, list, %item%%del% StringTrimLeft, list, list, 1 StringTrimRight, list, list, 1 return list } ;----------------------------------------------------------------------------------------------------- reload: reload return ;----------------------------------------------------------------------------------------------------- Exit: exitapp return ;-----------------------------------------------------------------------------------------------------
Script never worked for me I couldn't figure it out. :-(
got it to work, nice little script
once the hands are compiled do i need to delete the .txt file in order to mark new hands? cause this morning it worked fine.. then i played another session later and marked a few other hands and trying to compiled them now but its not showing the new hands.. so i guess it didn't mark them.
I've created the gamenumbers.txt manually, now when I press ctr-F1 (the command to start marking hands right?) a cmd prompt appears asking for the postgres password: -
Code:
C:\>"C:\Program Files\PostgreSQL\8.4\bin\psql.exe" "holdemmanager" "postgres" 0 <"C:\temp.txt" Password for user postgres:
If anyone can get this to work for me I will ship $20.
a window should prompt for you to connect to the database and the password should be there
when you mark hands with the script by pressing the hotkey, it automatically creates a gamenumbers.txt file with all the hands number written in it. once you're done marking hands, you press the other hotkey which will process it and make it available in HEM. if it asks for a pw, you can check my previous post
te3ce3 on stars.
te3ce3 on stars.
thanks mate
got a pm saying scripts not working after 1/11 update. Anoyone else ??
Personally I don't have any issues at all with the update
Personally I don't have any issues at all with the update
Yeah i have probs to!
So here is what i noticed.
In the gamenumbers file it dosnt recognise any numbers. So it remains empty all the time. Even though i try to mark hands.
I have tried to delete it. But then it will not be made automaticly again. So ive made it manually.
Ive then tried putting in some randoms number for testing purpose and gets this:
Ive tried both to put the script in the /bin folder and at the root of C:
My other settings are:
It has always worked until last ftp update..
Please help me getting this awesome script working again!!!
So here is what i noticed.
In the gamenumbers file it dosnt recognise any numbers. So it remains empty all the time. Even though i try to mark hands.
I have tried to delete it. But then it will not be made automaticly again. So ive made it manually.
Ive then tried putting in some randoms number for testing purpose and gets this:
Ive tried both to put the script in the /bin folder and at the root of C:
My other settings are:
It has always worked until last ftp update..
Please help me getting this awesome script working again!!!
works fine for me on stars, but also got a pm from a guy who wanted some help cause he had issues since the latest updates with FT, so you might want to check into it.
Everything is working fine for me, tell me which stakes you play and i'll check it out there. I can try helping anyone through teamviewer.
Miischaa, i don't see any invitations in msn. Do you mean sngs 5.5$?
There were some changes in sng table title on FT, here is fixed version
Code:
#noenv #SingleInstance, Force SetWinDelay,-1 settitlematchmode,2 Menu, Tray, NoStandard ;Menu, Tray, Icon, Markhands.ico,1,1 Menu, Tray, Add, Reload, Reload Menu, Tray, Add, Change Settings, showgui Menu, Tray, Default, Change Settings Menu, Tray, Add, Suspend Hotkeys, SuspendHotkey Menu, Tray, Add Menu, Tray, Add, Submit to Database, l_processsql Menu, Tray, Add, Exit, Exit Gui, Submit StringTrimRight, thisahk, A_ScriptName, 4 SetWorkingDir %A_ScriptDir% IniRead, StarsHHLogFolderPath, %thisahk%.ini, LogFolder, StarsHHPath, %A_Space% IniRead, FullTiltHHLogFolderPath, %thisahk%.ini, LogFolder, FullTiltHHPath, %A_Space% IniRead, PostgresLogPath, %thisahk%.ini, LogFolder, postgrespath, %A_Space% IniRead, postgresuser, %thisahk%.ini, LogFolder, postgresuser, %A_Space% IniRead, postgresdb, %thisahk%.ini, LogFolder, postgresdb, %A_Space% IniRead, HK_mark, %thisahk%.ini, LogFolder, HK_mark, %A_Space% IniRead, HK_sql , %thisahk%.ini, LogFolder, HK_sql , %A_Space% If (!StarsHHLogFolderPath or !FullTiltHHLogFolderPath or !PostgresLogPath or !postgresuser or !postgresdb) { gosub GetMHSettings } if HK_mark HotKey, %HK_mark%, l_markhand if HK_sql HotKey, %HK_sql%, l_processsql IfExist, gamenumbers.txt gosub deletetext settimer,checksize,55 return ^2:: Suspend Return l_markhand: winget,id,id,A wingetclass,class,ahk_id%id% if class=PokerStarsTableFrameClass { site=Stars dir:=StarsHHLogFolderPath } else if class=QWidget { site=FullTilt dir:=FullTiltHHLogFolderPath } else site= if site { filename:=HHFile(id, dir ,site) fileread,tempstr,%filename% tempstr= sleep,50 FileGetSize, FileSize, % filename if !FileSize FileSize:=0 listadd(filelist, id . "-" . FileSize) } return l_processsql: IfExist, temp.txt FileDelete, temp.txt IfExist, temp.bat FileDelete, temp.bat loop gamenumbers.* FileRead, numbers, %A_LoopFileName% if numbers { sql1=Update pokerhands sql2=Set mark_id = 1 sql3=Where gamenumber = sql4=AND handtimestamp > localtimestamp - interval '1 days'; sql5=Update pokerhands_hero Loop, Parse, numbers, `n, { if A_loopField { FileAppend, %sql1% %sql2% %sql3% %A_loopField% %sql4%`n, temp.txt FileAppend, %sql5% %sql2% %sql3% %A_loopField% %sql4%`n, temp.txt } } FileAppend, "%PostgresLogPath%\psql.exe"%A_space%"%postgresdb%"%A_space%"%postgresuser%"%A_space%0<"%A_ScriptDir%\temp.txt"`r`npause`n, temp.bat run temp.bat } else msgbox, gamenumbers.txt file doesn't exist or file is empty. numbers= return ;----------------------------------------------------------------------------------------------------- checksize: Loop, Parse, filelist, `, { stringsplit,tab,A_loopField,- wingetclass,class,ahk_id%tab1% if class=PokerStarsTableFrameClass { site=Stars dir:=StarsHHLogFolderPath } else if class=QWidget { site=FullTilt dir:=FullTiltHHLogFolderPath } filename:=HHFile(tab1, dir ,site) fileread,tempstr,%filename% tempstr= sleep,50 FileGetSize, FileSize, % filename if FileSize if FileSize!=%tab2% { num:=gethhnumber(tab1,site) FileAppend, %num%`n, gamenumbers.txt listDelItem(filelist, A_loopField) } } return ;----------------------------------------------------------------------------------------------------- gethhnumber(winid,site) { global StarsHHLogFolderPath,FullTiltHHLogFolderPath if site=Stars path=%StarsHHLogFolderPath% else path=%FullTiltHHLogFolderPath% hh:=LastHH(winid,path,site) Loop, Parse, hh, `n { if instr(A_loopfield,"Game #") { stringtrimleft,num,A_loopfield,instr(A_loopfield,"#") stringleft,num,num,instr(num,":")-1 break } } return num } ;----------------------------------------------------------------------------------------------------- HHFile(win, dir, site) { if site=Stars ext=HH else ext=FT title := WinGetTitle(win) if !(instr(title,"Tournament")>0 || instr(title,"Sit & Go")>0 || instr(title,"Sit&Go")>0 || instr(title,"table")>0 || instr(title,"Satellite")>0) { stringleft,file,title, InStr(title, "-","",0)-2 file := ext . SubStr(a_now, 1, 8) . A_space . file StringReplace, file, file, /,-, if site=Stars { StringReplace, file, file, USD -,- USD, StringReplace, file, file, EUR -,- EUR, } } else if site=Stars { stringtrimleft,file,title,instr(title,"Tournament")+10 stringleft,file,file,InStr(file, A_space)-1 } else { stringleft,file,title,InStr(title, "-","",instr(title,"Table"))-2 stringleft,file1,title,InStr(title, ")","",0) } loop %dir%\*.txt { if instr(A_LoopFileName,file)>0 & !instr(A_LoopFileName,"Summary")>0 return dir "\" A_LoopFileName } if instr(title,"Table") { if file1 { loop %dir%\*.txt { if instr(A_LoopFileName,file1)>0 & !instr(A_LoopFileName,"Summary")>0 return dir "\" A_LoopFileName } } return 0 } EnvAdd, date, -1, d stringleft,file,title, InStr(title, "-","",0)-2 file := ext . SubStr(date, 1, 8) . A_space . file StringReplace, file, file, /,-, if site=Stars { StringReplace, file, file, USD -,- USD, StringReplace, file, file, EUR -,- EUR, } loop %dir%\*.txt { if instr(A_LoopFileName,file) return dir "\" A_LoopFileName } EnvAdd, date, +1, d stringleft,file,title, InStr(title, "-","",0)-2 file := ext . SubStr(date, 1, 8) . A_space . file StringReplace, file, file, /,-, if site=Stars { StringReplace, file, file, USD -,- USD, StringReplace, file, file, EUR -,- EUR, } loop %dir%\*.txt { if instr(A_LoopFileName,file) return dir "\" A_LoopFileName } } return ;----------------------------------------------------------------------------------------------------- LastHH(win, dir, site) { wingettitle,title,ahk_id%win% stringtrimleft,hero,title,instr(title,A_space,"",0) heroaction1:=hero . A_space . "calls" heroaction2:=hero . A_space . "bets" heroaction3:=hero . A_space . "raises" if site=Stars game=PokerStars Game # else game=Full Tilt Poker Game # file@name:=HHFile(win, dir ,site) fileread,tempstr,%file@name% tempstr= sleep,50 FileRead, hh, %file@name% if !instr(hh,"seat") { FileGetSize,file@size, %file@name% FileRead,file@buffer, %file@name% VarSetCapacity(hh, file@size / 2 + 1, 0) r := DllCall("WideCharToMultiByte" , "UInt", 0 ; CodePage: CP_ACP=0 (current Ansi), CP_UTF7=65000, CP_UTF8=65001 , "UInt", 0 ; dwFlags , "Str", file@buffer ; LPCWSTR lpWideCharStr , "Int", file@size / 2 ; cchWideChar: -1=null terminated , "Str", hh ; LPSTR lpMultiByteStr , "Int", file@size / 2 + 1 ; cbMultiByte: 0 to get required size , "UInt",0 ; LPCSTR lpDefaultChar , "UInt", 0) ; LPBOOL lpUsedDefaultChar } StringTrimLeft, hh, hh, InStr(hh, game, "", 0)-1 if instr(hh,"SUMMARY") Stringleft, hh, hh, InStr(hh, "*** SUMMARY", "", 0)-1 return hh } ;----------------------------------------------------------------------------------------------------- WinGetTitle(win) { WinGetTitle, title, ahk_id%win% return title } ;----------------------------------------------------------------------------------------------------- StrRep(str,char,rep_char="",all=1) { StringReplace,str,str,%char%,%rep_char%,% all ? "useErrorLevel" : 0 return str } ;----------------------------------------------------------------------------------------------------- StarsHHFolderSelect: FileSelectFolder, SelectedFolder, *%ProgramFiles%\PokerStars\,, Select the folder with the PokerStars handhistory files SelectedFolder := RegExReplace(SelectedFolder, "\\$") ; Removes the trailing backslash, if present. SelectedFolder := RegExReplace(SelectedFolder, "\$") If SelectedFolder <> ;the user selected a folder { GuiControl,, StarsHHLogFolderPath, %SelectedFolder% StarsHHLogFolderPath := SelectedFolder IniWrite, %StarsHHLogFolderPath%, %thisahk%.ini, LogFolder, StarsHHPath Gui, Submit, NoHide } return ;----------------------------------------------------------------------------------------------------- FullTiltHHFolderSelect: FileSelectFolder, SelectedFolder, *%ProgramFiles%\Full Tilt Poker\,, Select the folder with the FullTilt handhistory files SelectedFolder := RegExReplace(SelectedFolder, "\\$") ; Removes the trailing backslash, if present. SelectedFolder := RegExReplace(SelectedFolder, "\$") If SelectedFolder <> ;the user selected a folder { GuiControl,, FullTiltHHLogFolderPath, %SelectedFolder% FullTiltHHLogFolderPath := SelectedFolder IniWrite, %FullTiltHHLogFolderPath%, %thisahk%.ini, LogFolder, FullTiltHHPath Gui, Submit, NoHide } return ;----------------------------------------------------------------------------------------------------- PostgresBinFolderSelect: FileSelectFolder, SelectedFolder, *%ProgramFiles%\PostgreSQL\,, Select the folder with the Postgres binary files SelectedFolder := RegExReplace(SelectedFolder, "\\$") ; Removes the trailing backslash, if present. SelectedFolder := RegExReplace(SelectedFolder, "\$") If SelectedFolder <> ;the user selected a folder { GuiControl,, PostgresLogPath, %SelectedFolder% PostgresLogPath := SelectedFolder IniWrite, %PostgresLogPath%, %thisahk%.ini, LogFolder, postgrespath Gui, Submit, NoHide } return ;----------------------------------------------------------------------------------------------------- postgresuserselect: InputBox, postgresuser,, enter Postgres Username IniWrite, %postgresuser%, %thisahk%.ini, LogFolder, postgresuser return ;----------------------------------------------------------------------------------------------------- postgresdbselect: InputBox, postgresdb,, enter Postgres Datbase Name IniWrite, %postgresdb%, %thisahk%.ini, LogFolder, postgresdb return ;----------------------------------------------------------------------------------------------------- listAdd( byRef list, item, del="," ) { list:=( list!="" ? ( list . del . item ) : item ) return list } ;----------------------------------------------------------------------------------------------------- listDelItem( byRef list, item, del=",") { ifEqual, item,, return list list:=del . list . del StringReplace, list, list, %item%%del% StringTrimLeft, list, list, 1 StringTrimRight, list, list, 1 return list } ;----------------------------------------------------------------------------------------------------- reload: reload return ;----------------------------------------------------------------------------------------------------- Exit: exitapp return ;----------------------------------------------------------------------------------------------------- SuspendHotkey: suspend,toggle return ;----------------------------------------------------------------------------------------------------- GetMHSettings: Gui, Add, Text, x10 y5 w120 h20 Center, Select Folder Location Gui, Add, Text, x140 y5 w150 h20 Center, Folder Location Gui, Add, Button, x5 y20 w150 h20 gPostgresBinFolderSelect center, Postgres Binary Folder Gui, Add, Edit, x160 y20 w520 h20 vPostgresLogpath, %PostgresLogpath% Gui, Add, Button, x5 y40 w150 h20 gStarsHHFolderSelect center, Poker Stars HH Folder Gui, Add, Edit, x160 y40 w520 h20 vStarsHHLogFolderPath, %StarsHHLogFolderPath% Gui, Add, Button, x5 y60 w150 h20 gFullTiltHHFolderSelect center, Full Tilt HH Folder Gui, Add, Edit, x160 y60 w520 h20 vFullTiltHHLogFolderPath, %FullTiltHHLogFolderPath% Gui, Add, Text, x5 y120 w150 h20 right, Postgres User Name: Gui, Add, Edit, x160 y120 w100 h20 vpostgresuser, %postgresuser% Gui, Add, Text, x5 y140 w150 h20 right, Postgres Database: Gui, Add, Edit, x160 y140 w100 h20 vpostgresdb, %postgresdb% Gui, Add, Text, x5 y160 w150 h20 right, Hotkey "mark current Hand" : Gui, Add, HotKey, x160 y160 w100 h20 vHK_mark, %HK_mark% Gui, Add, Text, x5 y180 w150 h20 right, Hotkey "process sql": Gui, Add, HotKey, x160 y180 w100 h20 vHK_sql, %HK_sql% Gui, Add, Button, w40 h30, OK ; The label ButtonOK (if it exists) will be run when the button is pressed. Gui, Show,, Markhand return showgui: Gui, Show,, Markhand return ButtonOK: GuiClose: GuiEscape: Gui, Submit,nohide IniWrite, %postgresdb%, %thisahk%.ini, LogFolder, postgresdb IniWrite, %postgresuser%, %thisahk%.ini, LogFolder, postgresuser IniWrite, %PostgresLogPath%, %thisahk%.ini, LogFolder, postgrespath IniWrite, %FullTiltHHLogFolderPath%, %thisahk%.ini, LogFolder, FullTiltHHPath IniWrite, %StarsHHLogFolderPath%, %thisahk%.ini, LogFolder, StarsHHPath IniWrite, %HK_sql%, %thisahk%.ini, LogFolder, HK_sql IniWrite, %HK_mark%, %thisahk%.ini, LogFolder, HK_mark Gui,Cancel return ;--------------------------------------------------------------------------------------------------- deletetext: MsgBox, 4,, Delete existing file gamenumbers.txt? (press Yes or No) IfMsgBox Yes FileDelete, gamenumbers.txt return ;---------------------------------------------------------------------------------------------------
I didnt try to mark hands jet, but I cant access to settings.
When I run script it appears in system tray, but when I choose "Change Settings" nothing happens, there is no window to change locations and/or hotkeys..
I still got old "markhand.ini" file in "PostgreSQL\8.4\bin", maybe new .ini is required?
When I run script it appears in system tray, but when I choose "Change Settings" nothing happens, there is no window to change locations and/or hotkeys..
I still got old "markhand.ini" file in "PostgreSQL\8.4\bin", maybe new .ini is required?
Feedback is used for internal purposes. LEARN MORE