Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 18 kết quả

Đề tài: [hỏi] - điều khiển control 1 chương trình khác được cài đặt trong win bằng c#

  1. #1
    Ngày gia nhập
    04 2016
    Bài viết
    27

    Question [hỏi] - điều khiển control 1 chương trình khác được cài đặt trong win bằng c#

    chào các anh chị,

    Hiện tại e mới học lập trình c# e đang gặp khó khăn trong việc chọn click vào textbox hay button từ 1 ứng dúng khác

    ví du:
    e đã dùng c# mở CCleaner lên (chương trình CCleaner dùng để dọn rác windows)
    hiện e k biết làm thế nào để ra lệnh cho c# click vào nút button Run CCleaner để chạy nó
    hoặc 1 ứng dụng khác nếu có textbox để nhập vào thì làm sao nhập được vào đó tự động.

    e cảm ơn các anh chị đã xem qua.
    mong chờ sự giúp đỡ của các anh chị.
    e cảm ơn.

  2. #2
    Ngày gia nhập
    09 2016
    Bài viết
    1,005

    Trong vài trường hợp có thể dùng SendKeys.SendWait, SendKeys.Send trong c#
    Xem :
    https://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys.sendwait(v=vs.110).a spx

  3. #3
    Ngày gia nhập
    11 2013
    Bài viết
    512

    Sử dụng PInvoke để gọi các APIs của Windows.
    Dùng FindWindows để tìm Handle của chương trình cần tác động.
    Dùng FindWindowEx để tìm Handle của nút nhấn.
    Dùng SendMessage để gửi tin nhắn CLICK tới button.

  4. #4
    Ngày gia nhập
    09 2016
    Bài viết
    1,005

    Cái PInvoke có làm việc với CT viết bằng java không nhể ?

    Viết PInvoke bằng c# hay c/c++ hả Duong_Act ?

  5. #5
    Ngày gia nhập
    11 2013
    Bài viết
    512

    Ở trong luồng này người hỏi không dùng Java nên không lan man.
    PInvoke viết bằng Tiếng Anh.

  6. #6
    Ngày gia nhập
    09 2016
    Bài viết
    1,005

    Mặc định [hỏi] - điều khiển control 1 chương trình khác được cài đặt trong win bằng c#

    Trích dẫn Nguyên bản được gửi bởi Duong_act Xem bài viết
    Ở trong luồng này người hỏi không dùng Java nên không lan man.
    PInvoke viết bằng Tiếng Anh.
    Chỗ nào nói không dùng Java ?
    Anh hay Hán cũng rứa, được thì bảo, không được thì bảo

  7. #7
    Ngày gia nhập
    09 2016
    Bài viết
    21

    Mấy cái hàm đó gọi API bắt cửa sổ và gửi lệnh điều khiển chuột. Còn cái chương trình muốn điều khiển nó viết bằng gì thì quan trọng gì

  8. #8
    Ngày gia nhập
    09 2016
    Bài viết
    1,005

    Trích dẫn Nguyên bản được gửi bởi exception Xem bài viết
    Mấy cái hàm đó gọi API bắt cửa sổ và gửi lệnh điều khiển chuột. Còn cái chương trình muốn điều khiển nó viết bằng gì thì quan trọng gì
    Kết quả mới quan trọng, viết bằng cái gì thì tùy
    Viết bằng batch chẳng hạn

  9. #9
    Ngày gia nhập
    04 2016
    Bài viết
    27

    Trích dẫn Nguyên bản được gửi bởi fms17 Xem bài viết
    Trong vài trường hợp có thể dùng SendKeys.SendWait, SendKeys.Send trong c#
    Xem :
    https://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys.sendwait(v=vs.110).a spx

    e đã thử dùng sendkeys.send() và sendkeys.sendwait() đều không được.
    trên cclean có phím tắt ALT +R là chạy đựoc cclean nhưng e sendkeys mãi mà làm chả được.

    nếu trong notepad sendkeys alt + f thì send được bình thường, nhưng chẳng hiểu sao lại không send được alt +r qua cclean :(
    Đã được chỉnh sửa lần cuối bởi mmnol : 10-10-2016 lúc 11:48 AM. Lý do: quên đính kèm

  10. #10
    Ngày gia nhập
    04 2016
    Bài viết
    27

    Trích dẫn Nguyên bản được gửi bởi Duong_act Xem bài viết
    Sử dụng PInvoke để gọi các APIs của Windows.
    Dùng FindWindows để tìm Handle của chương trình cần tác động.
    Dùng FindWindowEx để tìm Handle của nút nhấn.
    Dùng SendMessage để gửi tin nhắn CLICK tới button.
    e đã tìm hiểu cái nầy rất nhiều, cũng hiểu chút ít nhưng vẩn làm k được. a có bài hướng dẫn nào về cách dùng những hàm trên không? hoặc cho e xin link để xem cũng được. e tìm rất nhiều trên google nhưng vẩn k làm được. thằng sky++ rất hay nhưng e lại vẩn chưa vận dụng được nó.

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn