[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 怎样把文件转换成批处理,通过运行批处理可以还原的那种?

怎样把exe或者其他文件写到批处理里面,通过运行批处理生成原来的exe或者其他文件.

无聊时学着写过一个:
  1. On Error Resume Next
  2. srcFile = "F:\壁纸\WallPaper.jpg"
  3. dstFile = "f:\dst.vbs"
  4. with CreateObject("ADODB.Stream")
  5.         .Type = 1
  6.         .Mode = 3
  7.         .Open
  8.         .LoadFromFile srcFile
  9.         Bin = .Read
  10. End With
  11. Set fso = CreateObject("Scripting.FileSystemObject")
  12. Set f = fso.OpenTextFile(dstFile, 2, True)
  13. ext = fso.GetExtensionName(srcFile)
  14. f.WriteLine "ss=_"
  15. For i = 1 to lenB(Bin) Step 500
  16.         f.WriteLine """" & Bin2Str(midB(Bin, i, 500)) & """&_"
  17. Next
  18. f.WriteLine """"":L=Len(ss)/2" & vbCrLf
  19. f.WriteLine "Set rs=CreateObject(""ADODB.Recordset""):rs.Fields.Append ""m"",205,L:rs.Open:rs.AddNew:rs(""m"")=ss&ChrB(0):rs.Update"
  20. f.WriteLine "with CreateObject(""ADODB.Stream""):.Mode=3:.Type=1:.Open:.Write rs(""m"").GetChunk(L):.SaveToFile ""_New."&ext&""",2:End with"
  21. Function Bin2Str(b)
  22.         For j = 1 to lenB(b)
  23.                 s = AscB(MidB(b, j, 1))
  24.                 Bin2Str = Bin2Str & Right("0" & Hex(s), 2)
  25.         Next
  26. End Function
复制代码

TOP

回复 2# pcl_test


你可以和楼主共同学习一下:any2bat之批处理版和VBS版
http://bbs.bathome.net/thread-4435-1-1.html

TOP

如果是 vista 以上,可以用这个转换 base64 编码
编码:
  1. certutil -encode bin.txt Encode.txt
复制代码
解码:
  1. certutil -decode Encode.txt Decode.txt
复制代码

TOP

本帖最后由 CrLf 于 2015-2-4 20:38 编辑

32位系统可用ascode
编码:
  1. @echo off&setlocal enabledelayedexpansion
  2. del "%~1.part*.txt" >nul 2<&1
  3. set n=0
  4. (for %%a in ("%~1") do for /l %%b in (1 0x3030 %%~za) do (
  5.         set /a n+=1
  6.         encode.com>"%~1.part!n!.txt"
  7. ))<"%~1"
  8. pause
复制代码
解码:
  1. @echo off&setlocal enabledelayedexpansion
  2. @(echo RQPUWP]UZV_BBBB5``PY(E1(E5^)E7^)E^<(E@^)EI-
  3. echo SX3CP^< ~v^<P}k%%ooQRY2AY0@ uP0EPGEB?_]XYZ
  4. echo K43OK9007089LJLM21723083L2502M500089M689
  5. echo M789L131NMJM4N3L207N133L507M0M4649250O0O
  6. echo 51K104M2N030N059JJ45N2N589N9K44043LM21L3)>"DECODE.com"
  7. for %%a in ("%~n1") do set "filename=%%~na"
  8. set n=0
  9. (for %%a in ("!filename!.part*.txt") do (
  10.         set /a n+=1
  11.         decode.com<"!filename!.part!n!.txt"
  12. ))>"!filename!"
  13. pause
复制代码
http://bbs.bathome.net/viewthread.php?tid=21435

TOP

回复 1# nnszuo

只有纯文本的文件可以,想批处理、vbs、js、ini等

TOP

返回列表