Прежде чем вы ответите на этот вопрос, позвольте мне объяснить (как я прочитал все подобные темы).Скрыть окно команд в приложении C#
Мое приложение имеет оба этих параметра:
procStartInfo.CreateNoWindow = true;
procStartInfo.WindowStyle = ProcessWindowStyle.Hidden;
и также имеет Windowsapplication как тип вывода.
Черное окно STILL появляется, когда я вызываю команду командной строки. Есть ли что-нибудь еще, что я могу сделать, чтобы скрыть окно? Это не происходит для всех команд, XCOPY - это ситуация, когда черное окно вспыхивает. Это происходит только тогда, когда место назначения, в котором я XCOPYing, уже содержит файл, и оно подсказывает мне, хочу ли я его заменить. Даже если я перейду в/Y, он все равно будет кратковременно мигать.
Я открыт для использования vbscript, если это поможет, но любые другие идеи?
клиент позвонит мой исполняемый файл, а затем передать в командной командной строки, т.е.:
C:\MyProgram.exe start XCOPY c:\Test.txt c:\ProgramFiles\
Вот полный код приложения:
class Program
{
static void Main(string[] args)
{
string command = GetCommandLineArugments(args);
// /c tells cmd that we want it to execute the command that follows and then exit.
System.Diagnostics.ProcessStartInfo procStartInfo = new System.Diagnostics.ProcessStartInfo("cmd.exe", "/c " + command);
procStartInfo.RedirectStandardOutput = true;
procStartInfo.UseShellExecute = false;
// Do not create the black window.
procStartInfo.CreateNoWindow = true;
procStartInfo.WindowStyle = ProcessWindowStyle.Hidden;
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo = procStartInfo;
process.Start();
}
private static string GetCommandLineArugments(string[] args)
{
string retVal = string.Empty;
foreach (string arg in args)
retVal += " " + arg;
return retVal;
}
}
вы можете разместить остальную часть вашего 'Process' /' ProcessStartInfo' с ода? –
@fletcher: В вопросе говорится, что тип вывода - это приложение Windows, а не консоль. Я тестировал его с типом вывода, установленным в приложении Windows, и он отлично работает. @snow: я бы дважды проверить настройки OutputType. – nukefusion
@fletcher Это на самом деле проблема! Я бы хотел, чтобы окно не отображалось вообще! – mint