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ố 11 kết quả

Đề tài: Lấy Handle của 1 chương trình chạy ẩn

  1. #1
    Ngày gia nhập
    06 2008
    Bài viết
    8

    Mặc định Lấy Handle của 1 chương trình chạy ẩn

    Mình đã lấy đc Handle của 1 chương trình có "cửa sổ" nhưng ko biết cách lấy handle của 1 chương trình chạy ẩn (chỉ thấy trong task manager thôi) .
    Tìm mãi mà không thấy nên mới hỏi đó nhá! Ai biết ko? Chỉ với. Thanks nhiều!

  2. #2
    Ngày gia nhập
    10 2008
    Nơi ở
    sài gòn
    Bài viết
    422

    cậu có biết tên hay đường dẫn của chương trình đó không

  3. #3
    Ngày gia nhập
    06 2008
    Bài viết
    8

    Thanks vì đã quan tâm! Tớ vừa làm đc xong
    PHP Code:
    Process.GetProcessesByName("mysqld"

  4. #4
    Ngày gia nhập
    09 2008
    Bài viết
    328

    Visual C# Code:
    1. using System;
    2. using System.Collections.Generic;
    3. using System.Linq;
    4. using System.Text;
    5.  
    6. namespace ConsoleApplication1
    7. {
    8.     class Program
    9.     {
    10.         static void Main(string[] args)
    11.         {
    12.             Console.Write("kiem tra chuong trinh\n");
    13.             if (Process.GetProcessesByName("alg.exe") == 0 )
    14.             {
    15.                 Console.Write("truong trinh dang chay");
    16.             }
    17.         }
    18.     }
    19. }

    mình viết thế này sao không được hả cậu :(
    Tham gia diễn đàn MACOS http://www.apple9.com/forum

  5. #5
    No Avatar
    ngocbig Khách

    Thứ nhất, you chưa "using System.Diagnostics;"
    Thứ hai, method Process.GetProcessesByName() trả về mảng các process "alg.exe" chứ không phải giá trị kiểu bool.

  6. #6
    Ngày gia nhập
    09 2008
    Bài viết
    328

    Mặc định Lấy Handle của 1 chương trình chạy ẩn

    Thứ hai, method Process.GetProcessesByName() trả về mảng các process "alg.exe" chứ không phải giá trị kiểu bool.
    như tác giả nói thì kiểu trả về phải là handle của nó chứ,nếu vây handle là kiểu số mà,mình có đọc trong MSDN thấy bạn nói đúng nhưng mình không hiểu kiểu mảng nghĩa là sao,mảng gì nhỉ,mảng các số ah ( VD có 2 process alg.exe thì nó ra mảng 2 phần tử ah ) sorry vì mình còn gà Csharp
    Tham gia diễn đàn MACOS http://www.apple9.com/forum

  7. #7
    No Avatar
    ngocbig Khách

    Khi tác giả nói "Thanks vì đã quan tâm! Tớ vừa làm đc xong" thì có nghĩa là vấn đề đã đc giải quyết nên mình không quan tâm đến chủ đề lấy Handle nữa (kể cả nó có đúng hay sai!)

    Khi nhìn vào code của bạn mình chỉ góp ý thế thôi. Còn bạn hỏi nó trả về mảng gì thì khi bạn đọc trong thư viện MSDN thì phải thấy ngay chứ. Nó trả về một mảng kiểu Process. Từ đó có thể suy ra là nếu số phần tử trong mảng đó == 0 thì chưa có process tên là "alg.exe" đang chạy cả. That's it!

  8. #8
    Ngày gia nhập
    06 2008
    Bài viết
    8

    Thêm cái này bạn nè:
    PHP Code:
    using System.Runtime.InteropServices
    với lại đó là 1 mảng nên phải viết là:
    Visual C# Code:
    1.             for (int i = 0; i < Process.GetProcessesByName("mysqld").Length; i++)
    2.             {
    3.                 Process.GetProcessesByName("mysqld")[i].Kill();
    4.             }
    Ko cần ".exe"
    Mình muốn hỏi sao khi lấy handle bằng cách này:
    PHP Code:
    Process.GetProcessesByName("mysqld")[i].Handle 
    lại cho kết quả khác với lấy Handle bằng hàm FindWindow?
    Muốn chúng trùng nhau phải làm thế nào nhỉ? Ai biết chỉ với nhé!
    Đã được chỉnh sửa lần cuối bởi anhxtanh3087 : 10-12-2008 lúc 04:42 PM.

  9. #9
    No Avatar
    ngocbig Khách

    Hàm FindWindow chỉ lấy Handle của một cửa sổ còn Process.Handle là handle của process đó. Bạn xem lại member Handle và MainWindowHandle sẽ hiểu.

  10. #10
    Ngày gia nhập
    06 2008
    Bài viết
    8

    Sao mình dùng MainWindowHandle lại cho ra 0 nhỉ? Bạn thử làm cụ thể cho mình với.

Các đề tài tương tự

  1. lấy handle của textbox khi đã biết handle của form
    Gửi bởi prt_awm trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 3
    Bài viết cuối: 08-10-2011, 01:39 PM
  2. lấy handle của textbox khi đã biết handle của form
    Gửi bởi prt_awm trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 30-09-2011, 09:56 PM
  3. Hàm API Lấy Pid của Process từ HANDLE của nó ???
    Gửi bởi trần trân trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 1
    Bài viết cuối: 12-03-2009, 08:53 PM
  4. Hàm nào lấy Handle của 1 ứng dụng chạy ẩn
    Gửi bởi honey trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 7
    Bài viết cuối: 04-01-2009, 11:51 PM
  5. [VC] làm sao tìm handle 1 cửa sổ ?
    Gửi bởi polaris2490 trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 1
    Bài viết cuối: 03-04-2008, 12:19 PM

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