| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4106 人关注过本帖
标题:[原创]自动清理垃圾程序
只看楼主 加入收藏
cycchina
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2007-8-24
收藏
 问题点数:0 回复次数:6 
[原创]自动清理垃圾程序

*/ --------------------------------------------------------------------------------------
*/ 出自: 编程中国 http://www.bc-cn.net
*/ 作者: cycchina E-mail:china.cyc@gmail.com QQ:6080522
*/ 时间: 2007-8-25 编程论坛首发
*/ 声明: 尊重作者劳动,转载请保留本段文字
*/ --------------------------------------------------------------------------------------


代码在Dev-C++ 上编译通过
如果不想每次都清理,可以手动删除 注册表启动Run下Wincleaner.bat
#include <stdio.h>
#include <process.h>
main()
{
FILE *fout;
char bat[10]={"@ECHO OFF"};
char bat1[5]={"CLS"};
char bat2[15]={"title 中CYC国"};
char bat3[39]={"ECHO 版权所有 2006-2008 Chinese CYC"};
char bat4[39]={"ECHO Email:China.cyc@Gmail.com "};
char bat5[8]={"color 2"};
char bat6[58]={"ECHO CYC系统维护工程师 正在清除系统垃圾文件,请稍候......"};
char bat7[50]={"del /f /s /q %systemdrive%\\*.tmp"};
char bat8[50]={"del /f /s /q %systemdrive%\\*._mp"};
char bat9[50]={"del /f /s /q %systemdrive%\\*.gid"};
char bat10[50]={"del /f /s /q %systemdrive%\\*.chk"};
char bat11[50]={"del /f /s /q %systemdrive%\\*.old"};
char bat12[50]={"del /f /s /q %systemdrive%\\recycled\\*.*"};
char bat13[40]={"del /f /s /q %windir%\\*.bak"};
char bat14[50]={"del /f /s /q %windir%\\prefetch\\*.*"};
char bat15[50]={"rd /s /q %windir%\\temp & md %windir%\\temp"};
char bat16[50]={"del /f /q %userprofile%\\cookies\\*.*"};
char bat17[50]={"del /f /s /q %userprofile%\recent\\*.*"};
char bat18[40]={"del %SystemRoot%\\Prefetch\\*.* /q"};
char bat19[75]={"del /f /s /q \"%userprofile%\\Local Settings\\Temporary Internet Files\\*.*\""};
char bat20[58]={"del /f /s /q \"%userprofile%\\Local Settings\\Temp\\*.*\""};
char bat21[44]={"del /f /s /q \"%userprofile%\\recent\\*.*\""};
char bat22[50]={"ECHO 清除工作完成!"};
char bat23[50]={"ECHO 如有疑问 QQ:6080522"};
char bat24[14]={"ECHO. & pause"};
FILE *output=NULL;
char *regadd={"REGEDIT4\n\n[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run]\n\"Wincleaner.bat\"=\"C:\\\\Windows\\\\system32\\\\Wincleaner.bat /s\""};
if((output=fopen("$$$$$","w"))!=NULL)
{
fprintf(output,regadd);
fclose(output);
_spawnl(1,"c:\\windows\\regedit.exe"," /s $$$$$",NULL);
}
fout=fopen("c:\\Windows\\system32\\Wincleaner.bat","w");

{ fprintf(fout, "%s\n",bat);
fprintf(fout, "%s\n", bat1);
fprintf(fout, "%s\n", bat2);
fprintf(fout, "%s\n", bat3);
fprintf(fout, "%s\n", bat4);
fprintf(fout, "%s\n", bat5);
fprintf(fout, "%s\n", bat6);
fprintf(fout, "%s\n", bat7);
fprintf(fout, "%s\n", bat8);
fprintf(fout, "%s\n", bat9);
fprintf(fout, "%s\n", bat10);
fprintf(fout, "%s\n", bat11);
fprintf(fout, "%s\n", bat12);
fprintf(fout, "%s\n", bat13);
fprintf(fout, "%s\n", bat14);
fprintf(fout, "%s\n", bat15);
fprintf(fout, "%s\n", bat16);
fprintf(fout, "%s\n", bat17);
fprintf(fout, "%s\n", bat18);
fprintf(fout, "%s\n", bat19);
fprintf(fout, "%s\n", bat20);
fprintf(fout, "%s\n", bat21);
fprintf(fout, "%s\n", bat22);
fprintf(fout, "%s\n", bat23);
fprintf(fout, "%s\n", bat24);
}
fclose(fout);
}

搜索更多相关主题的帖子: 垃圾 自动 中国 cyc 
2007-08-25 23:51
coachard
Rank: 3Rank: 3
等 级:新手上路
威 望:7
帖 子:1251
专家分:0
注 册:2007-8-12
收藏
得分:0 

这不能算原创,只能算模仿。。。

不过很佩服LZ的毅力,能写如如下的代码:
fprintf(fout, "%s\n",bat);
fprintf(fout, "%s\n", bat1);
fprintf(fout, "%s\n", bat2);
fprintf(fout, "%s\n", bat3);
fprintf(fout, "%s\n", bat4);
fprintf(fout, "%s\n", bat5);
fprintf(fout, "%s\n", bat6);
fprintf(fout, "%s\n", bat7);
fprintf(fout, "%s\n", bat8);
fprintf(fout, "%s\n", bat9);
fprintf(fout, "%s\n", bat10);
fprintf(fout, "%s\n", bat11);
fprintf(fout, "%s\n", bat12);
fprintf(fout, "%s\n", bat13);
fprintf(fout, "%s\n", bat14);
fprintf(fout, "%s\n", bat15);
fprintf(fout, "%s\n", bat16);
fprintf(fout, "%s\n", bat17);
fprintf(fout, "%s\n", bat18);
fprintf(fout, "%s\n", bat19);
fprintf(fout, "%s\n", bat20);
fprintf(fout, "%s\n", bat21);
fprintf(fout, "%s\n", bat22);
fprintf(fout, "%s\n", bat23);
fprintf(fout, "%s\n", bat24);


偶学编程,也许本身就是一个错。。。
2007-08-26 00:00
cycchina
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2007-8-24
收藏
得分:0 
那您给我一个好主意,如何不写那么多?
模仿谁的代码了?
给一个C的实例,谢谢。我也好学学。真的,自己认为。写的方法太笨了!
而且写这个纯粹是为自己练习,和学习用。
让哥哥姐姐们笑话了.

[此贴子已经被作者于2007-8-26 0:28:31编辑过]


================================= 老师们好! =================================
2007-08-26 00:26
babaozhou
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-8-23
收藏
得分:0 

我也用c语言写了清理垃圾程序,但没楼主这么麻烦,其实只要调用系统命令就可以达到目的,以下是代码,在dev-c++下编译通过,只能用于vista:

# include <iostream.h>
# include <stdlib.h>
void del()
{
system("del /f /s /q %systemdrive%\\*.tmp");
system("del /f /s /q %systemdrive%\\*._mp");
system("del /f /s /q %systemdrive%\\*.log");
system("del /f /s /q %systemdrive%\\*.gid");
system("del /f /s /q %systemdrive%\\*.chk");
system("del /f /s /q %systemdrive%\\*.old");
system("del /f /s /q %windir%\\*.bak");
system("del /f /s /q %windir%\\prefetch\\*.*");
system("rd /s /q %windir%\\temp");
system("md %windir%\\temp");
system("del /f /s /q \"%appdata%\\Microsoft\\Windows\\cookies\\*.*\"");
system("del /f /s /q \"%userprofile%\\Local Settings\\Temporary Internet Files\\*.*\"");
system("del /f /s /q \"%userprofile%\\Local Settings\\Temp\\*.*\"");
system("rd /s /q \"%userprofile%\\Local Settings\\Temp\"");
system("md \"%userprofile%\\Local Settings\\Temp\"");
system("del /f /s /q \"%appdata%\\Microsoft\\Windows\\Recent\\*.*\"");
}
void menu()
{
cout<<"欢迎使用C版清除Vista垃圾文件"<<endl;

}
void over()
{
cout<<"Vista垃圾文件已清除完毕!"<<endl;
}
void pause()
{
system("pause");
}
main()
{
menu();
pause();
del();
over();
pause();
}

[此贴子已经被作者于2007-8-26 8:19:47编辑过]

2007-08-26 08:19
yuki
Rank: 2
等 级:新手上路
威 望:5
帖 子:508
专家分:0
注 册:2005-2-4
收藏
得分:0 

楼主让我看见当年的自己,我记得以前写代码的时候也写过很冗余的代码,而且解决问题的方法非常愚蠢,不过对于当初初学C的我而言能自己写出程序是一件令人非常振奋的事情,应该与楼主您现在的心情一样,加油坚持下去,不断地写程序,不断地阅读别人优秀的作品,扎实的学好数据结构、操作系统原理等相关的计算机核心课程,一定会成功的。

对于楼主的程序我可以给你个建议,c语言标准库中提供了findfirst()和findnext()函数,这一对函数可以用于遍历指定路径的文件和文件夹,unlink()该是这个函数吧)可以删除一个指定文件,造目录的函数好像是mkdir()

接下来的任务就是看你自己的啦,动手查帮助,然后动手实践,之前我写过一个deltree实现的程序,你能在本版的精华区找到这个帖子,这个程序中有运用findfirst与findnext的方法,可以给您一个参考,祝您学业有成。


我们都在命运湖上荡舟划桨,波浪起伏使我们无法逃离孤行;如果我们迷失方向,波浪将指引我们穿过另一天曙光
2007-08-26 09:17
cycchina
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2007-8-24
收藏
得分:0 

谢谢...太好了。。。。
却是刚刚学(自学)看到指针的部分,就自己写点,算个试验吧。感谢上面的2为大侠。
中心感谢


================================= 老师们好! =================================
2007-08-26 19:02
cycchina
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2007-8-24
收藏
得分:0 
回复:(babaozhou)我也用c语言写了清理垃圾程序,但没...

前辈,如果我这个菜鸟没有看错,应该死C++吧。
不过,有一个很好的思路了。。嘎嘎嘎
谢谢了


================================= 老师们好! =================================
2007-08-26 19:03
快速回复:[原创]自动清理垃圾程序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015090 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved