一般在工控机上安装软件之后,我们需要对工控机进行一些设置,例如是开机启动、禁用睡眠等。如果我们每台工控机都重复这些动作,难免会比较繁琐,有时也会忘记。最好,我们把这些设置动作,放在软件初次启动的代码里,或是在安装的过程中。
设置开机启动
设置开机启动需要修改注册表,代码如下:
RegistryKey root = Registry.CurrentUser;
RegistryKey run = root.CreateSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run");
run.SetValue("TestApp", Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "程序.exe"));
run.Close();
root.Close();
禁用睡眠
电脑进入睡眠模式后,程序就不一定能正常运行了。我们需要把电源选项里的进入睡眠时间改为从不。
这个设置需要用命令行来做,代码如下:
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo.FileName = "cmd.exe";
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardInput = true;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.CreateNoWindow = true;
process.Start();
process.StandardInput.AutoFlush = true;
process.StandardInput.WriteLine("powercfg /change standby-timeout-ac 0");
process.StandardInput.WriteLine("powercfg /change standby-timeout-dc 0");
process.StandardInput.WriteLine("exit");
string standardOutput = process.StandardOutput.ReadToEnd();
process.WaitForExit();
process.Close();
另外需要注意,上面的设置可能需要用管理员身份运行程序才能凑效。