Merhaba bugün C# ile Startup yani başlangıca dosya eklemeye bakacağız.
Bu ne işe yarar derseniz;
Malware yazılımlarda mesela Crypter veya RAT başlangıca ekleme seçeneğini aktif ettiğinizde, O program kendini her PC açılıp kapandığında aktif eder. Yoksa bağlantıyı tek seferlik alırsınız.
Şimdi koda geçelim;
İlk olarak belirli bir yoldan EXE alıp onu ekleyeceğiz:
Şimdide çalıştırılan EXE dosyasını Startup'a ekleyelim;
Bu ne işe yarar derseniz;
Malware yazılımlarda mesela Crypter veya RAT başlangıca ekleme seçeneğini aktif ettiğinizde, O program kendini her PC açılıp kapandığında aktif eder. Yoksa bağlantıyı tek seferlik alırsınız.
Şimdi koda geçelim;
İlk olarak belirli bir yoldan EXE alıp onu ekleyeceğiz:
C#:
using Microsoft.Win32;
using System;
using System.Windows.Forms;
namespace startup
{
class Program
{
static void Main(string[] args)
{
// burada 2 tane değişken atadık
// bunlardan biri programın yolunu
// diğeri programın ismini tutacak
// programın kayıt defterinde
// yani startupta olacak olan ismi tutuyoruz
string exeYolu = @"C:\eklenecek_program.exe";
string programAdi = "programın ismi";
try
{
// win32 kütüphanesi kayıt defteri ile işlemler için
// burada gördüğünüz registr key vs.
// bu kütüphane ile açılıyor
// burada kopyaladığımız yol
// başlangıç yolu dosya buraya kopyalanacak
RegistryKey rk = Registry.CurrentUser.OpenSubKey
("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
if (rk == null)
{
MessageBox.Show("Kayıt defteri anahtarı bulunamadı!");
return;
}
if (rk.GetValue(programAdi) == null)
{
rk.SetValue(programAdi, exeYolu);
MessageBox.Show("Program başlangıca eklendi!");
}
else
{
MessageBox.Show("Bu program zaten başlangıçta!");
}
rk.Close();
}
catch (Exception ex)
{
MessageBox.Show("Hata oluştu: " + ex.Message);
}
Console.WriteLine("İşlem tamamlandı.");
Console.ReadLine();
}
}
}
Şimdide çalıştırılan EXE dosyasını Startup'a ekleyelim;
C#:
using Microsoft.Win32;
using System;
using System.Windows.Forms;
namespace startup
{
class Program
{
static void Main(string[] args)
{
// normalde bir yoldan aldığımız exeyi
// burada Application.ExecutablePath fonksiyonu
// ile otomatik olarak exeye kendi yolunu verdik
string exeYolu = Application.ExecutablePath;
// bu kısımlar aynı regedittee görünecek isim
string programAdi = "program ismi";
try
{
RegistryKey rk = Registry.CurrentUser.OpenSubKey
("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
if (rk == null)
{
MessageBox.Show("Kayıt defteri erişilemez!");
return;
}
if (rk.GetValue(programAdi) == null)
{
rk.SetValue(programAdi, exeYolu);
MessageBox.Show("Program başlangıca eklendi!");
}
else
{
MessageBox.Show("Program zaten başlangıçta mevcut!");
}
rk.Close();
}
catch (Exception ex)
{
MessageBox.Show("Hata: " + ex.Message);
}
Console.WriteLine("İşlem bitti.");
Console.ReadLine();
}
}
}




