ฟอรั่ม PSsix

Would you like to react to this message? Create an account in a few clicks or log in to continue.

ฟอรั่มของบล็อก http://pssix.blogspot.com


+5
witsamui
sticked
primedius
ibana666
POS
9 posters

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    POS
    POS
    PSsix
    PSsix


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 1152
    ความนิยม : 326
    เข้าร่วมเมื่อ : 19/07/2010

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by POS 17/06/11, 04:30 pm

    ลองเปลี่ยนชุดคำสั่งด้านล่างนี้ครับ

    ตัวอย่างสำหรับกดปุ่ม 1 2 3 4 โดยใช้คำสั่ง ControlSend

    Code:

    #include <Constants.au3>
    #include <WinAPI.au3>

    Global $GameHD, $GameHD2

    Func _PSsixLoadH($gtitle)
       $GameHD = WinGetHandle($gtitle)
       $GameHD2 = _WinAPI_GetWindow($GameHD, $GW_CHILD)
       If @error Then
          MsgBox(4096, "Error", "ไม่พบหน้าต่างเกม")
       Else
          Return 1
       EndIf
    EndFunc

    If _PSsixLoadH("ชื่อไตเติลเกมส์") Then WinActivate($GameHD)

    Sleep(1000)
    ControlSend($GameHD, "", $GameHD2, "1")
    Sleep(100)

    ControlSend($GameHD, "", $GameHD2, "2")
    Sleep(100)

    ControlSend($GameHD, "", $GameHD2, "2")
    Sleep(100)

    ControlSend($GameHD, "", $GameHD2, "3")
    Sleep(100)

    avatar
    ibana666
    สมาชิกทั่วไป
    สมาชิกทั่วไป


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 18
    ความนิยม : 0
    เข้าร่วมเมื่อ : 29/05/2011

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty Re: สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by ibana666 21/06/11, 09:29 pm

    ผมลองในเกมส์MUของผมแล้ว เป็นเหมือนเดิมเลยล่ะครับ ตัวเลขมันไปกรองในช่องพิมพ์คำพูดหมดเลยครับ

    เกมส์นี้ร้ายกาจจริงๆ em229
    POS
    POS
    PSsix
    PSsix


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 1152
    ความนิยม : 326
    เข้าร่วมเมื่อ : 19/07/2010

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty Re: สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by POS 21/06/11, 10:08 pm

    ตรงบรรทัดคำสั่ง

    $GameHD2 = _WinAPI_GetWindow($GameHD, $GW_CHILD)

    เปลี่ยนค่า $GW_CHILD เป็นค่าอื่นด้านล่างนี้ (ลองเปลี่ยนทีละค่า)

    $GW_HWNDFIRST

    $GW_HWNDLAST

    $GW_HWNDNEXT

    $GW_HWNDPREV

    $GW_OWNER

    ปล. ระหว่างที่หน้าต่างเด้งขึ้นมา ก็คลิกที่หน้าต่าง 1 ครั้งด้วยครับ (อย่าลืมปิดหน้าต่างสำหรับ Chat ด้วย) ปัญหาจริงๆ ก็คือสคริปต์ไม่สามารถหาตำแหน่งที่อยู่ของชั้นหน้าต่างที่จะส่งเข้าไปได้

    avatar
    primedius
    มือใหม่เพิ่งสมัคร
    มือใหม่เพิ่งสมัคร


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 4
    ความนิยม : 0
    เข้าร่วมเมื่อ : 16/02/2012

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty Re: สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by primedius 20/02/12, 10:21 am

    POS พิมพ์ว่า:ลองเปลี่ยนชุดคำสั่งด้านล่างนี้ครับ

    ตัวอย่างสำหรับกดปุ่ม 1 2 3 4 โดยใช้คำสั่ง ControlSend

    Code:

    #include <Constants.au3>
    #include <WinAPI.au3>

    Global $GameHD, $GameHD2

    Func _PSsixLoadH($gtitle)
       $GameHD = WinGetHandle($gtitle)
       $GameHD2 = _WinAPI_GetWindow($GameHD, $GW_CHILD)
       If @error Then
          MsgBox(4096, "Error", "ไม่พบหน้าต่างเกม")
       Else
          Return 1
       EndIf
    EndFunc

    If _PSsixLoadH("ชื่อไตเติลเกมส์") Then WinActivate($GameHD)

    Sleep(1000)
    ControlSend($GameHD, "", $GameHD2, "1")
    Sleep(100)

    ControlSend($GameHD, "", $GameHD2, "2")
    Sleep(100)

    ControlSend($GameHD, "", $GameHD2, "2")
    Sleep(100)

    ControlSend($GameHD, "", $GameHD2, "3")
    Sleep(100)



    ผมลองตามท่านแล้ว มันเหมือนเป็น Send ธรรมดาอะครับ
    sticked
    sticked
    PSsix Member
    PSsix Member


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 24
    ความนิยม : 1
    เข้าร่วมเมื่อ : 30/01/2012
    อายุ : 34

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty Re: สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by sticked 20/02/12, 01:32 pm

    twelvesky2 ใช้ได้แต่


    $GW_OWNER


    เมื่อเปลี่ยนหน้าต่าง ก้ไม่ทำงานอ่ะครับ
    avatar
    witsamui
    มือใหม่เพิ่งสมัคร
    มือใหม่เพิ่งสมัคร


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 6
    ความนิยม : 0
    เข้าร่วมเมื่อ : 20/03/2012

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty Re: สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by witsamui 17/05/12, 04:51 am

    ขอบคุณนะครับ
    avatar
    ArkiEz
    มือใหม่เพิ่งสมัคร
    มือใหม่เพิ่งสมัคร


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 7
    ความนิยม : 0
    เข้าร่วมเมื่อ : 31/05/2012

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty Re: สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by ArkiEz 31/08/12, 09:18 pm

    ลองกับเกม Legend ออฟ เอดต้า

    แล้วไม่ได้เลยอะครับ พวกคำสั่ง Send / ControlSend ลองแล้วไม่ทำงาน
    POS
    POS
    PSsix
    PSsix


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 1152
    ความนิยม : 326
    เข้าร่วมเมื่อ : 19/07/2010

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty Re: สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by POS 01/09/12, 07:00 am

    หากโปรแกรมที่การป้องกันเช่น x trap หรือ game guard จะใช้งานไม่ได้ครับ (นอกจากคอมไพล์สคริปต์เป็นแบบ 64 บิต ซึ่งต้องใช้ในวินโดวส์ 64 บิตด้วย)
    avatar
    ArkiEz
    มือใหม่เพิ่งสมัคร
    มือใหม่เพิ่งสมัคร


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 7
    ความนิยม : 0
    เข้าร่วมเมื่อ : 31/05/2012

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty Re: สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by ArkiEz 01/09/12, 08:36 am

    POS พิมพ์ว่า:หากโปรแกรมที่การป้องกันเช่น x trap หรือ game guard จะใช้งานไม่ได้ครับ (นอกจากคอมไพล์สคริปต์เป็นแบบ 64 บิต ซึ่งต้องใช้ในวินโดวส์ 64 บิตด้วย)

    ตอนนี้ผมใช้ win7 64bit อยู่นะครับ เวลาจะรันตัว au3 ผมก็คลิกขวาเลือก run script (x64)

    ลองมาหลายคำสั่ง ไม่มีอะไรเกิดขึ้น จนเจอ

    ControlSend($GameHD, "", "", "{A DOWN}")
    Sleep(2000)
    ControlSend($GameHD, "", "", "{A UP}")
    Sleep(2000)

    ได้มาจากโปรแกรม Autokeyboard ที่มีการกดแบบ DOWN-UP

    จากที่ test กับเกมแล้ว มันกดปุ่ม A ตามต้องการจิงๆ คือมันพิมพ์ลงไปในช่องสนทนา แต่มันไม่มีผลกับตัวละคร เช่น ใช้สกิว/เดิน/เก็บของ (ลองเปิดปิดช่องสนทนาให้เหลือแต่ตัวละครแล้ว ก็ไม่ได้)

    - อยากทราบว่าจำเป็นต้อง compile เป็น (x64) ก่อนรึปล่าว เพราะยังไงก็ run script เป็น (x64) อยู่แล้ว
    - ต้องเพิ่มเติมอะไรเพื่อแก้ไขมั้ย
    - พอจะมีคำสั่งอื่นให้ลองอีกมั้ย
    - หรือจำเป็นต้องทำพวก Bypass เท่านั้น
    POS
    POS
    PSsix
    PSsix


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 1152
    ความนิยม : 326
    เข้าร่วมเมื่อ : 19/07/2010

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty Re: สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by POS 02/09/12, 06:29 am

    การ controlsend จะส่งค่าคีย์ที่กดไปยังชั้นของวัตถุในเกมส์ที่มีคุณสมบัติรับข้อความแรกสุด บางเกมส์ชั้นดังกล่าวจะเป็น ช่องแชท ในกรณีนี้ต้องแก้ไขด้วยใช้วิธีที่ผมโฟสด้านบน แต่ถ้าแก้ไขแล้วยังไม่ได้ ก็จะไม่สามารถส่งค่าคีย์ไปถึงตัวเกมส์ได้ ไม่ว่าจะคอมไพล์โปรแกรมเป็น 32 หรือ 64 บิตก็ตาม จึงต้องใช้คำสั่ง send แทน (นอกจากไปค้นพบวิธีอื่นที่ดีกว่านี้)
    Pochi
    Pochi
    PSsix Member Class III
    PSsix Member Class III


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 66
    ความนิยม : 1
    เข้าร่วมเมื่อ : 22/10/2010

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty Re: สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by Pochi 22/09/12, 10:09 pm

    em230
    avatar
    mukwan
    มือใหม่เพิ่งสมัคร
    มือใหม่เพิ่งสมัคร


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 7
    ความนิยม : 0
    เข้าร่วมเมื่อ : 02/11/2011

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty Re: สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by mukwan 05/01/13, 01:07 pm

    ลองแล้วมันเหมือน send ธรรมดาเลยครับ win7 64 bit

    พอออกนอกหน้าต่างเกมส์ก็ ไม่ทำอะไรเลย
    pakhoiz
    pakhoiz
    มือใหม่เพิ่งสมัคร
    มือใหม่เพิ่งสมัคร


    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty
    จำนวนข้อความ : 7
    ความนิยม : 0
    เข้าร่วมเมื่อ : 17/08/2014
    อายุ : 34

    สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้ Empty Re: สำหรับผู้ที่ใช้คำสั่ง ControlSend แล้วไม่สามารถสั่งกดคีย์ได้

    ตั้งหัวข้อ by pakhoiz 17/08/14, 01:02 pm

    ทดลองแล้ว มันพับจอไม่ได้อะคับ เหมอืน Send เลย

      เวลาขณะนี้ 28/03/24, 09:55 pm