仿病毒的自我复制。
新建一个window程序,在form1_load中加入
this .Hide();
this.ShowInTaskbar = false ;
this.Opacity = 0 ;
int count = 10 ;
string file = Application.ExecutablePath;
string path = Application.StartupPath;
string name = System.IO.Path.GetFileName(file);
try
{
count = int.Parse(name.Replace(".exe", string.Empty));
count--;
}
catch
{
}
string target = string.Format("{0}//{1}.exe" , path, count.ToString());
if (System.IO.File.Exists(file)&&count>0 )
{
System.IO.FileStream filestream = System.IO.File.Open(file, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
byte[] buffer = new byte[filestream.Length];
filestream.Read(buffer, 0,buffer.Length);
filestream.Close();
if (File.Exists(target))
{
File.Delete(target);
}
FileStream wr = File.Open(target, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);
wr.Write(buffer, 0, buffer.Length);
wr.Close();
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(target));
}
Application.Exit();
运行后结果。
任何一个,都会自我复制
但没有与任何应用程序勾上。也没有写入注册表,
新建一个window程序,在form1_load中加入
this .Hide();
this.ShowInTaskbar = false ;
this.Opacity = 0 ;
int count = 10 ;
string file = Application.ExecutablePath;
string path = Application.StartupPath;
string name = System.IO.Path.GetFileName(file);
try
{
count = int.Parse(name.Replace(".exe", string.Empty));
count--;
}
catch
{
}
string target = string.Format("{0}//{1}.exe" , path, count.ToString());
if (System.IO.File.Exists(file)&&count>0 )
{
System.IO.FileStream filestream = System.IO.File.Open(file, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
byte[] buffer = new byte[filestream.Length];
filestream.Read(buffer, 0,buffer.Length);
filestream.Close();
if (File.Exists(target))
{
File.Delete(target);
}
FileStream wr = File.Open(target, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);
wr.Write(buffer, 0, buffer.Length);
wr.Close();
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(target));
}
Application.Exit();
运行后结果。
任何一个,都会自我复制