2016-04-19 240 views
-2

系统重新启动嗨我想重启我的系统通过一个代码是通过没有管理员帐户运行,但它不working.kindly帮助我。通过无管理员用户帐户

这里是代码

try 
     { 
      if (DateTime.Now.ToString("H:mm").Equals("4:00")) 

      { 

       ProcessStartInfo Autorestart = new       ProcessStartInfo(@"C:\Autostart.bat"); 
       Autorestart.UseShellExecute = false; 

       SecureString pw = new SecureString(); 

       pw.AppendChar('p'); 
       pw.AppendChar('a'); 
       pw.AppendChar('s'); 
       pw.AppendChar('s'); 
       pw.AppendChar('w'); 
       pw.AppendChar('o'); 
       pw.AppendChar('r'); 
       pw.AppendChar('d'); 

       Autorestart.Password = pw; 
       Autorestart.UserName = "support"; 
+0

实际上不工作?如果有任何可以帮助解决问题的地方,可以共享错误/堆栈跟踪。 – yogi

+0

您发布的代码中没有任何内容会触发重新启动。如果您在.bat文件中触发重新启动,则应将其内容添加到您的问题中。 –

+0

是的,先生,这里是.bat文件 %windir%\ system32 \ shutdown -r -t 00 – abid

回答

0

在你Autostart.bat只需添加这一点。

shutdown -r -t 05;

我希望它有帮助。

+0

这也可以,但我不明白他为什么要从C#执行批处理脚本,为什么不从代码重新启动系统(尽管使用CMD)? – RhysO

+0

我使用了上面提到的代码,但没有给出结果。我告诉我,我想从没有管理员帐户重新启动任何机构帮助我整理出plzzzzzzzzz – abid

+0

if(DateTime.Now.ToString(“H:mm “).Equals(”4:00“)) {System.Diagnostics.Process.Start(”CMD.exe“,”shutdown/t“); – abid

0

我不会问你为什么要编写在4:00重新启动的代码,但我会帮助;-)。 C#中的重新启动功能需要管理员权限,因为它可以被恶意使用,但要做到这一点,只需要添加System.Diagnostics.Process.Start("CMD.exe", "shutdown /r");。这使用命令提示符命令重新启动(/r开关)。见下面的最终代码:

if (DateTime.Now.ToString("HH:mm") == "04:00") 
    System.Diagnostics.Process.Start("CMD.exe", "shutdown /r /t {time in seconds}") 

我不知道你为什么要这么做,为什么你有一个安全的密码和用户名和字符串建筑和其他一切所有的代码,但是这是最简单的方法。

+0

是的,先生,支持用户是管理员权限用户 – abid

+0

@abid只需将程序调用保存在要关闭的代码中,然后代码就可以重新启动PC。尽管如此,关机命令通常会有延迟。要删除这个使用'-t {time in seconds}'。默认值是20秒。 – RhysO

+0

对不起,先生不能让你。我应该加-t ???? – abid