之前,一个朋友让我用cmd做个简单的文档加密(base64),对于不太懂电脑的人来说看不懂就行。但是当那个人点击加密后的文件可以正常运行,问咋写?

  其实,像这种要求不高的加密来说,随便下载个加密软件就好。但是对加密后的文件直接双击就可以和源文件那样直接运行就很少了。

  这里我们用到的是windows自带的certutil命令,有关其命令的详解,大家直接执行certutil /? 就可以查看。

以下是我写的bat文件:

其中:

1.readme.txt  说明文档

  1. 使用说明:
  2.   .将你要加密的文件复制到Material文件夹下,如果没有Material可以自己新建
  3.   .双击ClickToEncodeFiles.bat文件,加密Material文件夹下的文件
  4.   .打开encodeFiles文件夹,其中就是加密后的文件
  5.  
  6. 注意:
  7.   .加密的文件名不能有空格
  8.   .每次会输出加密的结果注意查看。

2.ClickToEncodeFiles.bat 运行文档

  1. @echo off
  2. chcp
  3. if not "%OS%"=="Windows_NT" exit
  4. title EncodeFiles
  5. color 0a
  6. more readme.txt
  7. pause
  8.  
  9. chcp >nul
  10. setlocal EnableDelayedExpansion
  11.  
  12. rem 创建需要的文件夹
  13. REM if not exist decodeFiles mkdir decodeFiles
  14. if not exist encodeFiles mkdir encodeFiles
  15. if not exist Material (
  16. mkdir Material
  17. echo Please put the files which you want to encrypt in the "Material" folder of the current directory.
  18. pause
  19. exit
  20. )
  21.  
  22. REM Encrypt Files in the "Material" folder of the current directory
  23. echo Please ensure your encrypt files in Material folder .
  24. echo=
  25. set finallyPath=-
  26. for /F "tokens=1 delims=/" %%i in ('dir /b /on Material') do (
  27. echo Start encode %%i
  28. set finallyPath=".\encodeFiles\%%i.bat"
  29. REM echo !finallyPath!
  30. rem decode code
  31. echo @echo off > !finallyPath!
  32. echo certutil -f -decode "%%0" %%temp%%\%%i ^>nul >>!finallyPath!
  33. echo start %%temp%%\%%i>>!finallyPath!
  34. REM echo pause >>!finallyPath!
  35. echo exit >>!finallyPath!
  36. echo= >>!finallyPath!
  37.  
  38. certutil -F -encode ".\Material\%%i" "%temp%\%%i.txt" | find "FAILED" >nul && ( echo %%i encode defeated ^!^!^!^! & echo= )|| ( echo %%i encode passed & echo= )
  39. more "%temp%\%%i.txt" >>!finallyPath!
  40. if exist "%temp%\%%i.txt" del "%temp%\%%i.txt"
  41. )
  42.  
  43. start .\encodeFiles\
  44. pause
  45. exit

3.Material 中是要加密的文件

4.encodeFiles 是加密完成后的文件,双击可运行

下载地址:

  https://github.com/feiquan123/encodeFiles/

cmd实现批量文件的base64加密并双击加密文件后正常运行的更多相关文章

  1. JQuery获取图片大小并控制图片文件上传大小以及上图片文件时如何预览图片

    首先我们来看效果图: 点击上传之后如下: 在这里我获取到文件的大小,并且如果超出我设定的大小,则禁止上传! 不多说,上代码:先看div布局: <div class="imageCont ...

  2. 双击jar文件运行程序

    Java应用程序jar文件可以由 JVM(Java虚拟机)直接执行,只要操作系统安装了JVM便可以运行作为Java应用程序的jar文件.可是,很多朋友遇到一个难题,那就是下载了jar文件以后在Wind ...

  3. 读取本地json文件,转出为指定格式json 使用Base64进行string的加密和解密

    读取本地json文件,转出为指定格式json   引用添加Json.Net 引用命名空间 using Newtonsoft.Json //读取自定目录下的json文件StreamReader sr = ...

  4. bat文件调用cmd命令批量提取文件夹中的文件名(批量修改文件扩展名)

    前言: 在平时的工作中,经常需要批量统计文件和数据,如果逐个统计的话太耗时,而且容易出错那么有没有什么快速的方法呢,这里给大家介绍一种简单高效的方法. 方法: 1.打开CMD命令: 按下 Ctrl+R ...

  5. iOS加密方式及解压缩文件

    Base64加密方式 Base64是一种加密方法,可逆的加密. Base64中的可打印字符包括字母A-Z.a-z.数字0-9,这样共有62个字符./ + 填充 = echo -n BC|base64 ...

  6. (iOS)Base64加密和DES加密、以及JAVA和iOS中DES加密统一性问题

    我们在项目中为了安全方面的考虑,通常情况下会选择一种加密方式对需要安全性的文本进行加密,而Base64加密和DES64加密是常用的加密算法.我记得我在前一个项目中使用的就是这两种加密算法的结合:Bas ...

  7. R语言︱文件读入、读出一些方法罗列(批量xlsx文件、数据库、文本txt、文件夹)

    笔者寄语:小规模的读取数据的方法较为简单并且多样,但是,批量读取目前看到有以下几种方法:xlsx包.RODBC包.批量转化成csv后读入. R语言中还有一些其他较为普遍的读入,比如代码包,R文件,工作 ...

  8. HTML5 通过文件输入框读取文件为base64文件, 并借助canvas压缩 FileReader, files, drawImage

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  9. Sqlite表结构读取工具,word批量转html,在线云剪贴板,文件批量提取工具;

    工欲善其事必先利其器,本周为您推荐工具排行 Sqlite表结构读取工具,word批量转html,在线云剪贴板,文件批量提取工具:     本周我们又要发干货了,准备好接受了吗? 为什么是干货,就是因为 ...

随机推荐

  1. [Swift]LeetCode1029. 两地调度 | Two City Scheduling

    There are 2N people a company is planning to interview. The cost of flying the i-th person to city A ...

  2. linux入门--类UNIX系统详解

    有人说,这个世界上只有两种操作系统: UNIX 和类 UNIX 操作系统: 其它操作系统. 类 UNIX 系统(英文 Unix-like)既包括各种传统的 UNIX 系统,比如 FreeBSD.Ope ...

  3. scala读取配置文件

    Class: package libparser import scala.collection.mutable import scala.util.matching.Regex class conf ...

  4. Recursion之Demo

    Model: public class PerSon { [DisplayName("标识id")] public string id { get; set; } [Display ...

  5. qt cef嵌入web(二)

    在qt cef嵌入web文章中已经讲述了怎么把cef页面嵌入到qt程序中,但是这样并不完美,因为如果需要在多个窗口上创建cef浏览器部件的话,在 消息监听部分没有办法做区分多个浏览器事件,在这篇文章中 ...

  6. 基于winserver部署Apollo初次体验(附.net客户端demo)

    前言 配置中心伴随着这几年分布式系统演变和微服务架构的兴起,已经成为必不可少的需求之一.试下一下如果哪天公司的所有应用服务,从公司服务器迁移到云服务,成千上万的配置,修改起来是多么耗时费劲的事(我们公 ...

  7. C#版 - HDUoj 5391 - Zball in Tina Town(素数) - 题解

    版权声明: 本文为博主Bravo Yeung(知乎UserName同名)的原创文章,欲转载请先私信获博主允许,转载时请附上网址 http://blog.csdn.net/lzuacm. HDUoj 5 ...

  8. 大数据技术之_19_Spark学习_01_Spark 基础解析 + Spark 概述 + Spark 集群安装 + 执行 Spark 程序

    第1章 Spark 概述1.1 什么是 Spark1.2 Spark 特点1.3 Spark 的用户和用途第2章 Spark 集群安装2.1 集群角色2.2 机器准备2.3 下载 Spark 安装包2 ...

  9. what a fuck!这是什么鬼东西?

    Topic Link http://ctf5.shiyanbar.com/DUTCTF/1.html 1) 打开链接发现一片看不懂的东西,还真是WTF? 2)分析发现是Jother编码 将其放到浏览器 ...

  10. SpringBoot基础系列-使用Profiles

    原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/9996884.html SpringBoot基础系列-使用Profile 概述 Profi ...