病毒中的自我复制(C#代码)

 

做个这样的玩玩,仿病毒的自我复制。

但没有与任何应用程序勾上。也没有写入注册表,


新建一个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();

运行后结果。
任何一个,都会自我复制

转载于:https://www.cnblogs.com/lsgoodsun/archive/2007/10/08/917315.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值