Вопрос: у меня есть консольная программа, которую не надо видеть.
(Сбрасывает IIS и удаляет временные файлы.)
Сейчас я могу скрыть окно сразу после запуска следующим образом:
static void Main(string[] args)
{
var currentProcess = System.Diagnostics.Process.GetCurrentProcess();
Console.WriteLine(currentProcess.MainWindowTitle);
IntPtr hWnd = currentProcess.MainWindowHandle;//FindWindow(null, "Your console windows caption"); //put your console window caption here
if (hWnd != IntPtr.Zero)
{
//Hide the window
ShowWindow(hWnd, 0); // 0 = SW_HIDE
}
Проблема в том, что на мгновение появляется окно.
Есть ли конструктор для консольной программы, где я могу скрыть окно, прежде чем оно будет показано?
И второе:
Я использую
[System.Runtime.InteropServices.DllImport("user32.dll")]
static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
и мне не нравятся 32 в нем. Есть ли способ сделать это без DllImport?
Способ .NET?