我正在尝试使用System.Diagnostics.Process类在远程计算机上创建进程.我能够创建一个过程.但问题是,创建服务需要很长时间,并且会显示控制台窗口.另一个令人讨厌的事情是控制台窗口显示在我的窗体上,我不能在该窗体上执行任何其他操作.我已经设置了所有属性CreateNoWindow = true,
proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
Run Code Online (Sandbox Code Playgroud)
但它仍然显示控制台窗口.即使我已经重定向输出和错误分离流但没有运气.
有没有其他方法可以隐藏控制台窗口?请帮帮我.
这是我用来执行sc命令的代码的一部分.
Process proc = new Process();
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
proc.StartInfo.FileName = "sc";
proc.StartInfo.Arguments = string.Format(@"\\SYS25 create MySvc binPath= C:\mysvc.exe");
proc.StartInfo.RedirectStandardError = false;
proc.StartInfo.RedirectStandardOutput = false;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.Start();
proc.WaitForExit();
Run Code Online (Sandbox Code Playgroud) 我希望防止系统从Windows服务进入睡眠/休眠状态.我正在呼吁SetThreadExecutionState这样做的功能.但似乎没有效果.我只想知道该功能SetThreadExecutionState是否适用于Windows服务.如果不是,将会有什么替代方法.
下面是我正在使用的C#代码.我在Onstart服务方法上称呼它.
[DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
static extern uint SetThreadExecutionState(EXECUTION_STATE esFlags);
private void KeepAlive()
{
SetThreadExecutionState(EXECUTION_STATE.ES_DISPLAY_REQUIRED | EXECUTION_STATE.ES_SYSTEM_REQUIRED | EXECUTION_STATE.ES_CONTINUOUS)
}
Run Code Online (Sandbox Code Playgroud) 我正在编写一个.NET应用程序(Windows类库)来实现我们产品的许可.
问题是,MSIL反汇编程序或任何其他第三方工具可以轻松地反汇编DLL,并且可以轻松破解代码.
我甚至尝试过签署装配,但它仍然可以拆卸.
那么我该如何防止这种情况呢?
有没有可用的工具?
在ZedGraph中,我如何在Y轴和日期上绘制时间(如00:00,02:00,04:00等)(如12月4日至11日,4月13日至4月11日,4月14日 - 11,等等)在X轴上?条形设置已设置为BarType.Stack.
示例代码非常有用.
在winforms .net控件中,如果我们将Enabled属性设置为false,则控件将显示为灰色.
在这种情况下,对于许多颜色组合将变得不可读(因为我在运行时为用户提供了更改表单颜色的选项).
我可以使用ReadOnly属性,但它仅适用于TextBox控件,而不适用于其他控件,如ComboBox,DateTimePicker等.
我只是想知道有没有可用的选项,以便我可以防止控件在禁用时变灰.
在日期时间选择器控件中,用户必须按.(句点)移动到不同的字段(如日,月)
我想通过允许用户输入日期而不输入来覆盖此行为.(句点)
有没有在C#winforms中以编程方式实现此目的?
提前致谢.