为什么创建NoWindow

本文关键字:NoWindow 创建 为什么 | 更新日期: 2023-09-27 18:21:21

.NET的Process类具有属性CreateNoWindow

ProcessStartInfo.CreateNoWindow属性

获取或设置一个值,该值指示是否在新窗口中启动进程。

对我来说,这似乎是一个奇怪的名称选择的财产。默认值为CreateNoWindow = false,这是一个暂时令人困惑的双负片。

该房产按原样命名是有原因的吗?为什么不使用CreateWindow(具有相反的含义)?是否存在布尔属性必须默认为false的规则?

为什么创建NoWindow

我猜它只是名为CREATE_NO_WINDOW的底层Win32进程创建标志的一个非常字面的反映。

只有.net类的作者才能解释为什么选择将Win32约定反映到.net类上。换一种方式本来可以很容易地完成。如果非要我猜测的话,我建议做出这个选择是为了非常清楚地表明属性直接映射到CREATE_NO_WINDOW上。