.NET 4.x Скрытие окон стороннего приложения - C#
Формулировка задачи:
Доброго времени суток, мне нужно скрыть главное окно и побочные формы стороннего приложения. Объясню на примере блокнота, мне нужно запустить окно блокнота в скрытом режиме, и все формы которые будет вызывать блокнот должны тоже быть скрытыми, это возможно, и если возможно то как? Если можно то с примерами.
Калькулятор получается скрыть так, но что то кроме калькулятора уже не удается, на пример файлзилла, ее класс - wxWindowNR, но когда я вписываю его в код то ничего не происходит, да и ко всему прочему мне нужно запустить программу уже в скрытом режиме, а не скрывать ее потом.
[DllImport("user32.dll")]
private static extern IntPtr FindWindow(string ClassName, string WindowName);
[DllImport("user32.dll")]
private static extern IntPtr FindWindowEx(
IntPtr hwndParent, IntPtr hwndChildAfter,
string className, string windowName);
[DllImport("user32.dll")]
private static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
const int SW_HIDE = 0;
const int SW_SHOW = 5;
public static void Main(string[] args)
{
bool show = false;
IntPtr a = FindWindow("CalcFrame", null);
ShowWindow(a, show ? SW_SHOW : SW_HIDE);
}Решение задачи: «.NET 4.x Скрытие окон стороннего приложения»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Runtime.InteropServices;
using System.Diagnostics;
namespace ConsoleApplication64
{
class Program
{
static void Main(string[] args)
{
ProcessStartInfo si = new ProcessStartInfo(Environment.SystemDirectory + "\\notepad.exe");
si.WindowStyle = ProcessWindowStyle.Hidden;
Process.Start(si);
}
}
}