Làm cách nào để nhận trạng thái cửa sổ (maximized
, minimized
) của một quy trình khác đang chạy?Lấy trạng thái cửa sổ của một quá trình khác
Tôi muốn thử bằng cách sử dụng này:
Process[] procs = Process.GetProcesses();
foreach (Process proc in procs)
{
if (proc.ProcessName == "notepad")
{
MessageBox.Show(proc.StartInfo.WindowStyle.ToString());
}
}
Nhưng nếu quá trình là Maximized
hoặc Minimized
, nó bao giờ trả Normal
.
Cách sửa lỗi này?
Trong trường hợp của tôi, 'showCmd' luôn là giá trị ban đầu, và giữ nguyên, ngay cả khi' ShowWindow (showCmd! = 1) 'được gọi,' GetWindowPlacement' vẫn trả về 'showCmd = 1' trong cấu trúc' WINDOWPLACEMENT'. Vì vậy, nó là nghĩa đen về thời điểm cửa sổ được 'đặt'? –
Hãy nhớ thêm tham chiếu vào 'System.Drawing' – LazerSharks