2013-05-04 6 views
0

У нас есть устаревшее приложение, которое должно было быть сервисом, но созданным как служба, и когда оно работает, я не хочу, чтобы консоль отображалась.Как скрыть окно консоли

Есть ли способ скрывать окно консоли в приложении консоли Windows и/или минимизировать окно консоли в системном трее (не панели задач), а затем вернуть его при двойном щелчке на панели задач? Я уже сделал это с winform, но не уверен, что это можно сделать в консольном приложении.

Благодаря

+0

Вы хотите скомпилировать его без окна или вы хотите просто скрыть окно для текущей сборки? – Havenard

+0

нужно скомпилировать с окном и после его запуска, спрячьте его с помощью команды или минимизируя и т. Д. – 03Usr

+0

@ 03Usr Когда вы говорите «скомпилированный как услуга», что именно вы имеете в виду? – Jesse

ответ

0

Вы можете сказать программу начать скрытый, определив некоторые флаги запуска.

Вы можете, например, написать startup hidden.vbs скрипт с этим кодом:

Set oShell = CreateObject("WScript.Shell") 
oShell.Run "program.exe", 0 

С помощью этой небольшой скрипт, program.exe предполагается начать скрытый. Он будет отображаться в списке процессов, но не будет отображаться в виде окна, если он не был закодирован, чтобы обеспечить выполнение этого.

+0

Этот вопрос помечен как C# не в vbs. –

+0

Читать комментарии. – Havenard

1

Это будет скрыть окно консоли:

ProcessStartInfo startInfo = new ProcessStartInfo(); 
    startInfo.CreateNoWindow = true; 
    startInfo.UseShellExecute = false; 
    startInfo.FileName = "YourApp.exe"; 
    startInfo.CreateNoWindow = true; 
    startInfo.WindowStyle = ProcessWindowStyle.Hidden; 
Смежные вопросы