c语言打包游戏补丁,C语言实现的系统补丁自动安装工具.doc

C语言实现的系统补丁自动安装工具

C语言实现的系统补丁自动安装工具

现在重装系统对许多人来说已经不是什么难事了,但蛋疼的是重装后繁琐的补丁安装,或许许多人会说我装一款金山卫士之类的安全辅助软件就可以实现自动搜索补丁安装啊!没错,的确是这样的,不过你得联网下载补丁吧!这时有人又会说我有备份补丁的习惯,不用下载!然而,金山卫士或360卫士却不能自动安装重装系统之前已经下载安装过的补丁,需要我们手动一个一个双击补丁程序去手动安装,当你的补丁达到几十个甚至上百个的时候,相信到时你手都软了。不过还是会有高人说我写个批处理……呵呵,批处理,又有几个人会玩那玩意?基于以上观点,加上本人几天间断的捣鼓,整出了这款系统补丁自动安装工具(用C语言写的),目前已经实现自动判断当前文件夹中是否存在补丁,同时实现了无人值守、静默安装。你需要做的仅仅是将这个程序拷贝到存放系统补丁的文件夹中,然后双击即可!最新版本修正了原版本最后一个补丁会重复安装的Bug,新增安装补丁所耗总时间显示功能。

#include "iostream"#include "string.h"#include "time.h"using namespace std;void Hotfix int number 1;int n 0;char str[100];char temp[100];FILE *fp NULL;fp fopen "Hotfix.txt","r" ;cout "安装过程中请不要关闭本窗口,否则会导致安装失败! ! ! \n\n部分补丁在安装过程中可能会发生错误,不过不影响其他补丁的安装!\n\n开始安装系统补丁!\n\n";clock_t first,last;double duration;while !feof fp fscanf fp,"%s",str ;n++; n--;fp fopen "Hotfix.txt","r" ;first clock ;for ;number n;number++ fscanf fp,"%s",str ;cout "正在安装第" number "个补丁……请稍后……";strcpy temp,"start /wait " ;strcat temp,str ;strcat temp," /quiet /passive /norestart" ;system temp ;cout "OK ! ! !\n\n"; last clock ;duration double last-first /CLOCKS_PER_SEC;fclose fp ;cout "系统补丁已经全部安装完成!总耗时约为" int duration+1 "秒!\n\n是否立即重启使补丁生效? Y/N :";char sure;cin sure;if sure 'Y'|| sure 'y' system "shutdown -r -t 0" ;else cout "\n您选择稍后重启来使补丁生效!请按任意键退出本程序!\n\n";system "pause" ; void main system "color 2e" ;//自定义窗口背景颜色cout "\n*************************系统补丁自动安装工具V1.0******************************\n\n";cout "************************本程序由软件一班黄正宇开发*****************************\n\n";system "type nul Hotfix.txt" ;//创建文本文件int state system "dir /b /o-d WindowsXP*.exe Windows6.1*.msu KB*.exe Hotfix.txt" ;//遍历文件夹,将补丁文件名写入Hotfix.txtif state 1 system "cls" ;cout "\n****************************系统补丁自动安装工具V1.0***************************\n\n";cout "***************************本程序由软件一班黄正宇开发**************************\n\n";cout "警告:在当前目录中没有检测到系统补丁文件! \n\n请将本程序拷贝到您存放补丁的文件夹中,然后重新运行本程序!\n\n";system "pause" ; else cout "检测到当前文件夹中有系统

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值