NG编程论坛_免费编程教程_零基础轻松学编程_做下一个技术大神!

 找回密码
 加入NG

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

查看: 304|回复: 1

[其他] C语言写开机密码程序

[复制链接] [view_bdseo_push]

offline

新浪微博达人勋

该用户从未签到


扫一扫,手机继续看本帖!
已在线3d19h10m
发表于 2016-12-21 00:09:30 | 显示全部楼层 |阅读模式

立即注册NG,提升编程能力,成为下一个神!

您需要 登录 才可以下载或查看,没有帐号?加入NG 新浪微博登陆

x
一个简单的C语言密码验证程序,可用于软件加密
[C] syntaxhighlighter_viewsource syntaxhighlighter_copycode
#include "conio.h"
#include "string.h"
#include 
"stdio.h"
void 
error()
{window(12,10,68,10);
textbackground(15);
textcolor(132);
clrscr();
cprintf("file 
or system error! you can't enter the system!!!");
while(1); 
/*若有错误不能通过程序*/
}
void look()
{FILE *fauto,*fbak;
char 
*pass="c:\\windows\\password.exe"; /*本程序的位置*/
char a[25],ch;
char 
*au="autoexec.bat",*bname="hecfback.^^^"; /*bname 是autoexec.bat 
的备份*/
setdisk(2); /*set currently disk c:*/
chdir("\\"); /*set currently 
directory \*/
fauto=fopen(au,"r+");
if 
(fauto==NULL)
{fauto=fopen(au,"w+");
if (fauto==NULL) 
error();}
fread(a,23,1,fauto); /*读取autoexec.bat前23各字符*/
a[23]='\0';
if 
(strcmp(a,pass)==0) 
/*若读取的和pass指针一样就关闭文件,不然就添加*/
fclose(fauto);
else
{fbak=fopen(bname,"w+");
if 
(fbak==NULL) 
error();
fwrite(pass,23,1,fbak);
fputc('\n',fbak);
rewind(fauto);
while(!feof(fauto))
{ch=fgetc(fauto);
fputc(ch,fbak);}
rewind(fauto);
rewind(fbak);
while(!feof(fbak))
{ch=fgetc(fbak);
fputc(ch,fauto);}
fclose(fauto);
fclose(fbak);
remove(bname); 
/*del bname file*/
}
}
void pass()
{char 
*password="88888888";
char input[60];
int 
n;
while(1)
{window(1,1,80,25);
textbackground(0);
textcolor(15);
clrscr();
n=0;
window(20,12,60,12);
textbackground(1);
textcolor(15);
clrscr();
cprintf("password:");
while(1)
{input[n]=getch();
if 
(n>58) {putchar(7); break;} /*若字符多于58个字符就结束本次输入*/
if (input[n]==13) 
break;
if (input[n]>=32 && input[n]<=122) 
/*若字符是数字或字母才算数*/
{putchar('*');
n++;}
if (input[n]==8) /*删除键*/
if 
(n>0)
{cprintf("\b 
\b");
input[n]='\0';
n--;}
}
input[n]='\0';
if 
(strcmp(password,input)==0)
break;
else
{putchar(7);
window(30,14,50,14);
textbackground(15);
textcolor(132);
clrscr();
cprintf("password 
error!");
getch();}
}
}
main()
{look();
pass();
}

[NG]

 

                                                  




如何洗牌,54张随机出现而又不重复
使用c++旋转BMP图像的源码及分析实现方法
楼主的其他热帖
[C/C++语言论坛] 炫彩俄罗斯方块程序
[C#编程论坛] C#和C语言有啥区别?好学吗
[Android开发论坛] 珍贵的安卓开发实战教程!
[C/C++语言论坛] 国际程序设计大赛作品欣赏
[综合技术讨论] 游戏外挂攻防艺术(认识,游戏安全,外挂
[VB教程] VB开发实战宝典

nextgod.com我是下一个神!
回复
【点击@我】

使用道具 举报

     

offline

新浪微博达人勋

该用户从未签到

已在线1d2h30m
发表于 2016-12-21 10:08:18 | 显示全部楼层
站位
nextgod.com我是下一个神!
     
您需要登录后才可以回帖 登录 | 加入NG 新浪微博登陆

本版积分规则

快速回复 返回列表 客服中心 搜索 官方QQ群

手机版|NG监狱|NG编程论坛 ( 豫ICP备15026783号-1 ) NG已运行天| |

GMT+8, 2017-10-24 06:43 AM

Powered by Discuz!&NG编程论坛

© 2015-2017 NextGod

快速回复 返回顶部 返回列表