Run("C:\Program Files\GameWorld\Laghaim\Laghaim.exe")
Sleep(4000)
Global $GameHD
Func _PSsixLoadH($gtitle)
$GameHD = WinGetHandle($gtitle)
If @error Then
MsgBox(4096, "Error", "ไม่พบหน้าต่างเกม")
Return 1
EndIf
EndFunc
If _PSsixLoadH("Laghaim") Then WinActivate($GameHD)
if WinActivate($GameHD) Then Send("{ENTER}")
Sleep(145000)
Send("{TAB}")
sleep(2000)
Send("ไอดีเกม")
Sleep(2000)
Send("{TAB}")
Send("พลาสเกม")
sleep(3000)
MouseClick("left",49,445,1,400)
sleep(3000)
Send("{ENTER}")
sleep(4200)
MouseClick("left",540,228,1,500)
sleep(2500)
MouseClick("left",317,535,1,300)
โค๊ตนี้ผมเขียนสำหรับ Login เกม laghaim อัตโนตมัติ แต่ปัญหาคือ ตอนรอโหลดก่อนถึงหน้าต่าง login ID password ผมใช้วิธีกะเวลาเอา ตรง Sleep(145000) ซึ่งแน่นอนมันใช้ได้แค่เครื่องเรา ถ้าจะใช้กับเครื่องอื่นกะเวลาไม่ถูกแน่นอนทำให้โปรแกรมใช้ได้จำกัด ผมเลยใช้คำสั่ง WinWaitActive ซึ่งจะจับ title bar ไม่ได้เพราะ title bar ตอนโหลดกับตอน Login ชื่อเดียวกันคือ Laghaim จำเป้นต้องจับตัวอักษรแทน ซึ่งผมได้ลองเขียนแล้วแต่ว่ามันกลับไม่ทำคำสั่งต่อไปเลย ผมจับชื่อ Sever ซึ่งน่าจะจับได้เพราะเป็นตัวหนังสือที่ใช้ เมาส์คลิกได้ ผมเลยอยากถามว่า
1.ควรเขียนอย่างไรใช้คำสั่งอะไรดีในการแทน การกะ้เวลา โดยใช้ sleep
2.ตรง Send("ไอดีเกม") กับ Send("พลาสเกม") ถ้าผมอยากสร้างอีกโปรแกรมหนึ่งเป้นโปรแกรมให้กรอก ID Pass แล้วรับมาระบุตรง Send("ไอดีเกม") Send("พลาสเกม")ควรเขียนอย่างไรครับ จะเชื่อต่อกันอย่างไร
ท่านไหนมีข้อแนะนำตรงไหนแนะนำหน่อยนะครับ พอดีผมหัดเขียนอยู่ ขอบคุณทุกคำตอบและคำแนะนำครับ สวัสดีปีใหม่ครับ
Sleep(4000)
Global $GameHD
Func _PSsixLoadH($gtitle)
$GameHD = WinGetHandle($gtitle)
If @error Then
MsgBox(4096, "Error", "ไม่พบหน้าต่างเกม")
Return 1
EndIf
EndFunc
If _PSsixLoadH("Laghaim") Then WinActivate($GameHD)
if WinActivate($GameHD) Then Send("{ENTER}")
Sleep(145000)
Send("{TAB}")
sleep(2000)
Send("ไอดีเกม")
Sleep(2000)
Send("{TAB}")
Send("พลาสเกม")
sleep(3000)
MouseClick("left",49,445,1,400)
sleep(3000)
Send("{ENTER}")
sleep(4200)
MouseClick("left",540,228,1,500)
sleep(2500)
MouseClick("left",317,535,1,300)
โค๊ตนี้ผมเขียนสำหรับ Login เกม laghaim อัตโนตมัติ แต่ปัญหาคือ ตอนรอโหลดก่อนถึงหน้าต่าง login ID password ผมใช้วิธีกะเวลาเอา ตรง Sleep(145000) ซึ่งแน่นอนมันใช้ได้แค่เครื่องเรา ถ้าจะใช้กับเครื่องอื่นกะเวลาไม่ถูกแน่นอนทำให้โปรแกรมใช้ได้จำกัด ผมเลยใช้คำสั่ง WinWaitActive ซึ่งจะจับ title bar ไม่ได้เพราะ title bar ตอนโหลดกับตอน Login ชื่อเดียวกันคือ Laghaim จำเป้นต้องจับตัวอักษรแทน ซึ่งผมได้ลองเขียนแล้วแต่ว่ามันกลับไม่ทำคำสั่งต่อไปเลย ผมจับชื่อ Sever ซึ่งน่าจะจับได้เพราะเป็นตัวหนังสือที่ใช้ เมาส์คลิกได้ ผมเลยอยากถามว่า
1.ควรเขียนอย่างไรใช้คำสั่งอะไรดีในการแทน การกะ้เวลา โดยใช้ sleep
2.ตรง Send("ไอดีเกม") กับ Send("พลาสเกม") ถ้าผมอยากสร้างอีกโปรแกรมหนึ่งเป้นโปรแกรมให้กรอก ID Pass แล้วรับมาระบุตรง Send("ไอดีเกม") Send("พลาสเกม")ควรเขียนอย่างไรครับ จะเชื่อต่อกันอย่างไร
ท่านไหนมีข้อแนะนำตรงไหนแนะนำหน่อยนะครับ พอดีผมหัดเขียนอยู่ ขอบคุณทุกคำตอบและคำแนะนำครับ สวัสดีปีใหม่ครับ