Công cụ bảo vệ mã nguồn .NET mạnh nhất, không thể unpack, miễn phí cho các khách hàng đầu tiên đăng ký.
Từ 1 tới 3 trên tổng số 3 kết quả

Đề tài: Chạy 1 app *.exe trên cửa sổ WPF

  1. #1
    Ngày gia nhập
    07 2011
    Bài viết
    4

    Mặc định Chạy 1 app *.exe trên cửa sổ WPF

    Hi mọi người,

    Mình đang có một vấn đề về lập trình C#: Chạy 1 app *.exe trên cửa sổ WPF

    Mình có thử tìm kiếm và tham khảo một số bài viết trên mạng, nhưng kết quả thì chưa thật như ý. Vd như: http://www.codeproject.com/Tips/673701/Hosting-EXE-Applications-in-a-WPF-Window-Applicati . Ví dụ này có chạy được notepad nhưng không thể run các app khác (chỉ có thể mở app đó lên và không thể "dán" app đó vào cửa sổ của app mình được). Không biết có pro nào có kinh nghiệm trong chuyện này này có thể giúp mình được không.

    Thanks
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

  2. #2
    Ngày gia nhập
    03 2009
    Bài viết
    128

    Cái này mình làm rồi bạn, lý do mà notepad thì lúc nào cũng chạy được còn các app khác thì cái được cái không là do code nó tìm handle của cửa sổ đó là dòng này
    _appWin = _childp.MainWindowHandle;
    Tức là nó coi cửa sổ đầu tiền được tạo ra là cửa sổ chính, với nhiều app mà có nhiều cửa sổ, thì để gắn đúng cửa sổ bạn cần thì bạn phải tìm cửa sổ đó bằng lệnh FindWindow
    http://www.pinvoke.net/default.aspx/user32.findwindow

  3. #3
    Ngày gia nhập
    07 2011
    Bài viết
    4

    Cảm ơn noone2407 nhiều nhé. Giờ mình phát hiện có 2 vấn đề khiến cho không gắn được *.exe app vô cửa sổ chương trình của mình:

    1. Như noone2407 nói
    2. *.exe app tốn thời gian để khởi tạo, do đó phải đợi sau khi app đó start xong rồi mới bắt đầu thực hiện các câu lệnh sau khi start process.
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

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