『文章正文』

编写一个加/解密程序

来源:厦门电脑维修维护网 作者:mrakey 日期:2007-08-05 字体:[ ] 发表文章 | 发表评论
上一篇:没有上一篇  下一篇:域名劫持

1。运行vc++6.0,"文件"--"新建",在工程下选择"win32 application","确定"后选择"a simple win32 application"完成.
2.双击"work space"中后缀为.cpp的文件,编写代码如下,注(程序自身已给出了一部分代码,补充完整就是了)

// 17.cpp : defines the entry point for the application.
//

#include "stdafx.h"
#include "stdio.h"


int apientry winmain(hinstance hinstance,
                     hinstance hprevinstance,
                     lpstr     lpcmdline,
                     int       ncmdshow)
{
  // todo: place code here.
    if(!strlen(lpcmdline))
 {
  messagebox(null,"请先选择文件,把文件拖进来!","出错了!",mb_iconinformation);
  return 0;
 }
 file *fp1,*fp2;
 fp1=fopen(lpcmdline,"rb");
 if(fp1==null)
 {messagebox(null,"文件无法打开!","出错了!",mb_iconerror);
 return 0;
}
 char stmpname[max_path];
 strcpy(stmpname,lpcmdline);
 strcat(stmpname,".tmp");
 fp2=fopen(stmpname,"wb");
 if(fp2==null)
 {
  messagebox(null,"文件无法写入!","出错了!",mb_iconerror);
  return 0;
 }
 char c=fgetc(fp1);
 char ch=0;
 while(!feof(fp1))
 {
  ch=c^233;
  fputc(ch,fp2);
  c=fgetc(fp1);
 }
 fclose(fp1);
 fclose(fp2);
 if(!deletefile(lpcmdline))
 {
  deletefile(stmpname);
  messagebox(null,"文件被占用!","出错了!",mb_iconerror);
  return 0;
 }
 movefile(stmpname,lpcmdline);
 messagebox(null,"加/解密已完成!","恭喜!",mb_iconinformation);


 return 0;
}

注意,17.cpp是我的文件名,将相关内容替换就是了。


3。如何用呢。

例如将一张hei.jpg的图片拖入编绎好的exe文件,再运行一个这张图片,你会发现什么也没有了,图片被加密了,再将图片拖入exe文件,然后再运运图片,显示正常,也就完成解密了。

直接双击运行会出错的!

图像原来的样子把图像拖进17.exe 后的成功提示,这里是加密成功了!!


再运行一下hei.jpg,提示"没有预揽",说明加密成功!

再将图片拖进17.exe,完成解密!!

再浏览一遍原图像.

有一个问题,就是我把它放在桌面上进行,它会提示文件无法打开的,但放在d盘又或者是其它盘却可以成功。

用户名: 邮箱:
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
文章搜索
相关文章
  • 暂时没有相关新闻!
 网站首页 -  网站地图 -  关于我们 -  网站设计 -  联系方式 -  在线咨询 -  技术论坛 -  设为首页 -  收藏本站
厦门电脑维修维护网(www.fx365.com.cn) 地址:厦门前埔南区古兴里6号505 电话:0592-8424711/5021562 传真:0592-5913841
copyright © 2005 - 2008 www.fx365.com.cn inc. all rights reserved 网站备案号:闽icp备05017658号
链接及市场合作qq:83744378、125146711 e-mail:fx365@fx365.com.cn