C# - Tùy Chọn Khởi Động Cùng Windows Cho Ứng Dụng

Chúng ta thường thấy các ứng dụng chuyên nghiệp thường có tùy chọn cho phép ứng dụng khởi động cùng Windows, vậy chúng ta làm điều đó như thế nào.

Startup with windows

Cơ chế để các ứng dụng được windows gọi start tự động khi mở máy đó là nó sẽ tìm các ứng dụng có đăng ký Startup trong thư mục Run của Registry và khởi động lần lượt các ứng dụng. Vậy để thực hiện việc đăng ký này chúng ta làm như sau.

private void RegisterInStartup(bool isChecked)
{
RegistryKey registryKey = Registry.CurrentUser.OpenSubKey
("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
if (isChecked)
{
// Đăng ký stratup cùng Windows
registryKey.SetValue("HoverNote", Directory.GetCurrentDirectory() + "\\HoverNote.exe");
}
else
{
// Hủy đăng ký
registryKey.DeleteValue("HoverNote");
}
}

Chú ý: Hàm SetValue(string1, string2) nhận hai giá trị
  1. string1: Tên khóa cho một registry, tên này bạn đặt tùy ý và nó sẽ là khóa cho các lần làm việc sau
  2. string2: là đường dẫn bạn muốn Windows gọi để start một cái gì đó (ở đây là file *.exe)
Sau khi đăng ký chúng ta sẽ đọc xem việc đăng ký này có thành công hay không bằng đoạn code sau

private bool CheckStartup()
{
bool result;
RegistryKey registryKey = Registry.CurrentUser.OpenSubKey
("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);

// Nếu key này tồn tại thì việc đăng ký là thành công
var rg = registryKey.GetValue("HoverNote");
if (rg != null)
{
result = true;
}
}


Chúc các bạn thành công!
PHẠM TUÂN

1 nhận xét:

Write nhận xét
April 15, 2016 at 9:13 AM delete

giờ mình muốn chạy ứng dung ở thư mục D:\\app\power.exe thì mình viết thế nào? sao báo lỗi hoài

Reply
avatar