設定手機開機就啟動程式的類
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using Microsoft.Win32;
namespace AnotherTodayScreenItem.Utl
{
///
/// 設定手機開機就啟動程式的類
///
class AutoRun
{
private static String myAppPath = GetAppPath();
public static string GetAppPath()
{
//return System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName); //GetName().CodeBase)
return System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase); //GetName().CodeBase)
}
///
/// 建構函式
///
public AutoRun(string file_name)
{
string StartupPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Startup);//Startup路徑
System.IO.File.Copy(myAppPath+file_name.Trim(), StartupPath + file_name+".exe", true);
//獲得檔案的當前路徑
//string dir = Directory.GetCurrentDirectory();
//獲取可執行檔案的全部路徑
string exeDir = myAppPath+file_name+".exe";
//獲取Run鍵
RegistryKey key1 = Registry.LocalMachine;
RegistryKey key2 = key1.CreateSubKey("SOFTWARE");
RegistryKey key3 = key2.CreateSubKey("Microsoft");
RegistryKey key4 = key3.CreateSubKey("Windows");
RegistryKey key5 = key4.CreateSubKey("CurrentVersion");
RegistryKey key6 = key5.CreateSubKey("Run");
//在Run鍵中寫入一個新的鍵值
key6.SetValue("myForm", exeDir);
key6.Close();
//如果要取消的話就將key6.SetValue("myForm",exeDir);改成
//key6.SetValue("myForm",false);
}
///
/// 設定應用程式開機自動執行
///
/// 應用程式的檔名
/// 是否自動執行,為false時,取消自動執行
///
public static void SetAutoRun(string fileName, bool isAutoRun)
{
RegistryKey reg = null;
string name = myAppPath + fileName.Trim() + ".exe";
try
{
if (!System.IO.File.Exists(fileName))
throw new Exception("該檔案不存在!");
name = name.Substring(fileName.LastIndexOf("\\") + 1);
reg = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
if (reg == null)
reg = Registry.LocalMachine.CreateSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run");
if (isAutoRun)
reg.SetValue(name, fileName);
else
reg.SetValue(name, false);
}
catch (Exception ex)
{
throw new Exception(ex.ToString());
}
finally
{
if (reg != null)
reg.Close();
}
}
}
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14766526/viewspace-561384/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- linux設定開機啟動Linux
- lubuntu設定開機啟動Ubuntu
- 給 .NET 程式加個「設定開機啟動」
- java程式設定開機自啟Java
- win10開機啟動項怎麼設定 win10設定開機啟動項的方法Win10
- Ubuntu 設定開機自啟動指令碼Ubuntu指令碼
- 設定開機自啟動nginx和httpdNginxhttpd
- 動態軟體如何設定雲手機的程式的?
- win10開機啟動項怎麼設定_如何設定win10系統開機啟動項Win10
- Linux平臺Oracle開機自啟動設定LinuxOracle
- Linux MySQL 服務設定開機自啟動LinuxMySql
- Linux Redis 服務設定開機自啟動LinuxRedis
- systemctl 命令設定開機自啟動失敗
- windows下redis設定redis開機自啟動WindowsRedis
- centos7.5 設定Mysql開機自啟動CentOSMySql
- TongWeb在Linux下設定開機自啟動WebLinux
- ubuntu-18.04 設定開機啟動指令碼Ubuntu指令碼
- Linux CentOS開機啟動項設定命令:chkconfigLinuxCentOS
- ubuntu14 設定開機啟動指令碼Ubuntu指令碼
- frp設定開機自啟FRP
- linux設定開機自啟動指令碼的最佳方式Linux指令碼
- win10開機啟動項怎麼設定 win10新增開機啟動項Win10
- 設定msyqlphp-fpm開機自動啟動指令碼PHP指令碼
- win10開機啟動項怎麼設定 win10開機啟動項在哪裡Win10
- windows10開機啟動項在哪裡_windows10開機啟動項怎麼設定Windows
- win10開機啟動項如何管理_win10開機啟動項怎麼設定Win10
- win10怎麼新增開機啟動項 win10開機啟動項如何設定Win10
- 如何設定win10軟體開機自動啟動 win10軟體開機自動啟動的方法Win10
- JavaFx 建立快捷方式及設定開機啟動Java
- win10開機啟動項怎麼設定順序啟動的方法Win10
- Android設定app開機自啟AndroidAPP
- win10自定義開機啟動項的步驟_win10怎樣設定開機啟動項Win10
- Nginx設定成服務並開機自動啟動的配置詳解Nginx
- Windows開機啟動指定程式Windows
- Android開機自啟動程式Android
- MacOS技巧|Mac上設定開機啟動項小技巧Mac
- win10開機啟動項優化設定_win10開機啟動項怎麼優化Win10優化
- win10電腦開啟蓋子自動開機怎麼設定 win10翻蓋自動開機設定方法Win10
- Linux部署的WGCLOUD的探針agent如何設定開機自啟動LinuxGCCloud