Почему CreateNoWindow?
Класс .NET Process имеет свойство CreateNoWindow
.
Свойство ProcessStartInfo.CreateNoWindow
Получает или задает значение, указывающее, следует ли запускать процесс в новом окне.
Для меня это кажется странным выбором имени для свойства. По умолчанию используется CreateNoWindow = false
, мгновенно путающий двойной отрицательный.
Есть ли причина, по которой свойство называется? Почему бы не CreateWindow
(с противоположным значением)? Есть ли правило, что логические свойства должны иметь значение false?
Ответы
Ответ 1
Я бы предположил, что это просто буквальное отражение базового Win32 флаг создания процесса с именем CREATE_NO_WINDOW
.
Только автор класса .net может объяснить, почему был сделан выбор, чтобы отразить соглашение Win32 в классе .net. Это легко можно было сделать по-другому. Если бы мне пришлось догадаться, я бы предположил, что был сделан выбор, чтобы было ясно, что свойство отображается непосредственно на CREATE_NO_WINDOW
.