C# 程序设置开机启动(一)
一、示例使用VBScript創建啟動文件,并添加到Windows系統的啟動目錄
默認情況下
所有用戶啟動目錄:C:ProgramDataMicrosoftWindowsStart MenuProgramsStartUp
當前用戶的啟動目錄:C:Users【用戶】AppDataRoamingMicrosoftWindowsStart MenuProgramsStartup
1.創建VBScript文件,指定后臺啟動exe可執行文件,命名為"xxx.vbs"。
注:雙擊vbs文件就可以后臺啟動exe文件了
set wscriptObj = CreateObject("Wscript.Shell")
wscriptObj.run "C:UsersHKDesktopHKServerEditVersion2.4DebugHKServer.exe",0
2.將VBScript文件手動移動到系統的啟動文件夾
把.vbs文件(或者它的快捷方式)直接復制到 開始-->所有程序-->啟動 文件夾下。
兩個啟動目錄都可以,只是針對的用戶范圍不同。
注:
1.移動文件的時候很多時候,需要管理員權限,點擊允許就行了。
2.如果是快捷方式,可以沒有擴展名。
二、在代碼中自動創建開機啟動文件處理
注意:
1.追加腳本內容,需要指定為默認編碼
2.如果需要以管理員身份啟動或者將啟動設置為所有的本地用戶,需要移動到C:ProgramDataMicrosoftWindowsStart MenuProgramsStartUp,
使用注冊表獲取目錄的之后個目錄需要為LocalMachine。
3.關于程序以管理員身份運行參考:C#如何以管理員身份運行程序(轉)
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello world");
Console.WriteLine(DateTime.Now);
CreateStartup();
Log("程序啟動成功");
Task.Factory.StartNew(() =>
{
while (true)
{
Log($"時間:{DateTime.Now}");
Thread.Sleep(1000);
}
});
Console.Read();
}
//記入日志
static void Log(string content)
{
//日志記錄到桌面
string path = LocalPathHelper.DesktopPath + "\data.txt";
if (File.Exists(path) == false)
{
File.Create(path).Close();
}
File.AppendAllText(path, $"{content}
", Encoding.Default);
}
/// <summary>
/// 為當前程序創建后臺啟動文件到 開機啟動文件夾
/// </summary>
static void CreateStartup()
{
/**
* 創建文件到了當前用戶的啟動文件夾
*/
//C:Users ianmaAppDataRoamingMicrosoftWindowsStart MenuProgramsStartupConsole1.vbs
//使用本地的啟動文件夾
//如果想移動到這個目錄需要的操作:
//1.當前程序以管理員身份運行
//2.獲取的注冊表的根節點設置為LocalMachine
//C:ProgramDataMicrosoftWindowsStart MenuProgramsStartupConsole1.vbs
string path = LocalPathHelper.StartupPath + "\Console1.vbs";
if (File.Exists(path) == false)
{
File.Create(path).Close();
StringBuilder str = new StringBuilder();
str.AppendLine("set wscriptObj = CreateObject("Wscript.Shell")");
str.AppendLine("wscriptObj.run "" + LocalPathHelper.CurrentProgramPath + "\Console1.exe",0");
str.AppendLine();
//需要指定編碼,不然無法運行命令
File.AppendAllText(path, str.ToString(), Encoding.Default);
}
}
}
三、如果需要一管理員的身份運行的程序,程序啟動時都需要授權,重啟后也是。
更多:
C# 根據注冊表獲取當前用戶的常用目錄整理
Windows服務簡單實例
VS Code搭建.NetCore開發環境(二)
總結
以上是生活随笔為你收集整理的C# 程序设置开机启动(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 可以兑换的捕鱼游戏有哪些(能和可以的用法
- 下一篇: 关于ExtJS通过单击左边的treePa