返回列表 发帖

[其他] Hope Any to Bat,将任何文件插入至Bat中

本帖最后由 HOPE2021 于 2022-6-5 15:19 编辑

这个程序可以将任何文件插入进批处理脚本中,可以让您的批处理能在绝大多数Windows环境下自动解包复杂的文档。

注意
本程序最新版本使用的VBS内核并不成熟,
目前已在Windows XP/Windows Vista/Windows 10环境下进行测试,
打包程序只有在Windows 10中才能正常运行,
不过打包后的自解压脚本可以在Windows XP/Windows Vista/Windows 10中运行。
恳请您的改进。

声明
本程序允许在保留原作者及所有改进者名单的情况下,由任何个人和团体二次发行。

更新日志
        ·Version Version 1.0.0000 09/08/2021
        ·Version 1.0.0001[未发布] 19/08/2021
                首次尝试VBS内核,兼容性极差
        ·Version Version 1.0.0002 05/06/2022
                重新设计VBS内核,速度增强,
                更改了界面。
                未解决兼容性问题,打包程序目前只在 Windows 10 测试正常。
3

评分人数

好样的, 没了Certutil, 看你怎么办,关键时刻还得用bse,不仅仅是嵌入exe, 可压缩嵌入各种文件

TOP

本帖最后由 HOPE2021 于 2021-8-9 18:01 编辑

回复 2# slimay


请看兼容性声明:
echo.    兼容性声明:
echo.    Windows 7 x64
echo.    Windows 8.x x64
echo.    Windows 10.x x64

不过,谢谢您的提醒,我正在查阅关于使用vbs进行base64加密的方法。

TOP

我也有Bat转Exe程序,可以嵌入文件夹等任何文件
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

是的,我从您这里下载了bat转exe程序。谢谢。

TOP

回复 1# HOPE2021

谢谢楼主的无私分享,收藏学习!
好东西需要作者详解其功能和用法及其示例,方能不辜负作者初心!!
想向楼主进一步请教详解,对您这个东东我的理解是不是对的:

比如:
我有一个abc.exe文件,拖入其中之后,确实自动生成了一个Exe-Com2Bat.bat文件和我定义的test001.bat文件。

1.  原先那个abc.exe文件可以不用了,直接删除了也可以吗??
2.  Exe-Com2Bat.bat文件和我定义的test001.bat文件,究竟哪个才是我最终需要的文件呢??(我把Exe-Com2Bat.bat文件也删除了,直接使用test001.bat文件也可以看见原先abc.exe的执行结果)。
3.  如果,原先的那个abc.exe文件是可以用命令行执行并且可以带参数执行的,那么,我用您这个时,最终就需要abc.exe  /stext abclist.txt这样自动执行,怎么办呢??更进一步,将来abclist.txt这个文件名需要动态更换,又怎么办呢??


谢谢您详解,祝福您更上一层楼!有更多的成果更多的收获!!

TOP

本帖最后由 HOPE2021 于 2021-8-21 17:10 编辑

回复 6# locoman
1.Exe-Com2Bat.Bat只是一个安装程序,如果您想删除abc.exe,请新建一个空文件夹,在此空文件夹里运行Exe-Com2Bat.Bat,再验证释放出来的abc.exe是否能正常运行,如果可以正常运行,那么abc.exe就可以删除.
2.因为Exe-Com2Bat.Bat是安装程序,如果它运行成功,那么您可以把它稍作改进,把%0改为goto,以达到内嵌abc.exe的目的.
3.除非是某些特殊文件格式(目前已知.Zip,.Dll,.Db),Exe-Com2Bat是不会损伤文件的,您可以将Exe-Com2Bat.BAt中的代码内嵌至批处理文件中,如果您要动态替换文件名,您可以:
Set /p FileName=
abc.exe  /stext "%FileName%"COPY
所以,您可以使用类似以下的格式进行内嵌式第三方程序的使用:
@echo off
@Goto :Begin
:Begin
Call :abc_Installs
Set /p FileName=
abc.exe  /stext "%FileName%"
[您的代码]
:abc_Installs
(
echo.[Base64码]
) > abc.exe
if exist abc.exe @Goto :eof
if not exist abc.exe @Call :abc_Installs
@Call :abc_InstallsCOPY
参考程序:
http://www.bathome.net/thread-59538-1-1.html
http://www.bathome.net/thread-59481-1-1.html[1.0.0038以前的版本]
谢谢
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

我以前的文件工程也有这个功能,但是因为有一个输出所有文件的BUG导致文件工程停止支持...
现在打开下载链接会有个警告
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 8# cmd1152
新版本将会更新为Any2Bat
而且内核更换为VBS,目前有一个小Bug为解决,ForFiles.Exe的嵌入包已经可以正常使用
Hope2021
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

回复 9# HOPE2021


    刚刚在写FCOEC(和你这个应该差不多),刚刚打错了,是因为文件工程有一个会删除当前目录所有文件的BUG
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 3# HOPE2021


    删除VBScript Script
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

回复 7# HOPE2021


    所以你是氵怪!   <---刚从mcbbs矿工茶馆过来的
梦依旧在,只是,心有余而力渐有不足
年年岁岁花相似,岁岁年年人不同

TOP

1.0.0000版本
@echo off
Rem Exe-Com2Bat生成程序
cls
chcp 936 > nul
Mode Con: Cols=80 Lines=25
color 3f
@goto :Start
:Start
if exist Exe-Com2Bat.Exe-Com2Bat del Exe-Com2Bat.Exe-Com2Bat
set "File=/"
cls
echo.
echo.
echo.    Exe-Com2Bat 加密生成程序
echo.
echo.    By HOPE2021
echo.
echo.    此计算机程序用于将其他程序的生成程序嵌入至Bat中,即点即生成,稍加改动
echo.    即可将第三方嵌入至Bat文件中,十分方便。
echo.    本程序会将资源打包成Bat形式的安装包,存在当前目录下,命名为Exe-Com2Ba
echo.    t.bat,请及时查收。
echo.    Exe-Com2Bat.bat中的代码请勿随意编辑,否则很有可能生成木马。
echo.
echo.    注意:
echo.    调用的系统资源有限,不建议您加密大小大于 1 Mb 的程序。
echo.    无法为您加密 .dll 或 .db 文件,这些应用程序拓展您只能以其他程序加密。
echo.    只能够加密 .exe 或 .com 文件
echo.   
echo.    兼容性声明:
echo.    Windows 7 x64
echo.    Windows 8.x x64
echo.    Windows 10.x x64
echo.
set /p File=    ^>^> 请将要转换的Exe或Com文件拖入这里:
set "File=%File:"=%"
set File="%File%"
if not exist %File% (
echo.
echo.    ^>^> 没有此文件...
echo.
echo.    ^>^> 请按回车键继续...
pause > nul
@goto :Start
)
set /p Filea=    ^>^> 请输入程序的名称(带有文件拓展名):
set "Filea=%Filea:"=%"
set Filea="%Filea%"
echo.
echo.    ^>^> 正在进行 Certutil 编码...
Certutil -encode %File% "%cd%\Exe-Com2Bat.Exe-Com2Bat" > nul
find /i "(" Exe-Com2Bat.Exe-Com2Bat > nul
if not errorlevel 1 goto :Start_1
find /i ")" Exe-Com2Bat.Exe-Com2Bat > nul
if not errorlevel 1 goto :Start_1
echo.@echo off > Exe-Com2Bat.bat
echo.( >> Exe-Com2Bat.bat
for /f "delims=" %%i in (Exe-Com2Bat.Exe-Com2Bat) do (
echo.echo.%%i >> Exe-Com2Bat.bat
)
echo.) ^> %Filea% >> Exe-Com2Bat.bat
echo.if not exist %Filea% %%0 >> Exe-Com2Bat.bat
echo.Certutil -decode -f %Filea% %Filea% ^> nul >> Exe-Com2Bat.bat
echo.if not exist %Filea% %%0 >> Exe-Com2Bat.bat
echo.exit >> Exe-Com2Bat.bat
start explorer "%cd%"
%0
:Start_1
echo.@echo off > Exe-Com2Bat.bat
echo.cd.^> %Filea% >> Exe-Com2Bat.bat
for /f "delims=" %%i in (Exe-Com2Bat.Exe-Com2Bat) do (
echo.echo.%%i ^>^> %Filea% >> Exe-Com2Bat.bat
)
echo.if not exist %Filea% %%0 >> Exe-Com2Bat.bat
echo.Certutil -decode -f %Filea% %Filea% ^> nul >> Exe-Com2Bat.bat
echo.if not exist %Filea% %%0 >> Exe-Com2Bat.bat
echo.exit >> Exe-Com2Bat.bat
start explorer "%cd%"
%0COPY
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

本帖最后由 HOPE2021 于 2022-6-5 15:15 编辑

1.0.0002上半部分
@Mode Con: Cols=80 Lines=25 & @Color 3F & @Chcp 936 > Nul & Title Hope Any to Bat Version 1.0.0002 & @Echo Off
@Goto :Begin
:Begin
Cd /D "%~dp0"
@Call :LoadFunctions
@Goto :Main
:Main
Cd /D "%~dp0"
@Call :UserInteraction
@Goto :Main
:UserInteraction
@Call :PrintMenu
@Call :Choice
If "%ascKey%"=="1" Set /P Str=#1]<Nul & @Goto :NewProject
If "%ascKey%"=="2" Set /P Str=#2]<Nul & @Call :ReadHelp
If "%ascKey%"=="3" Set /P Str=#3]<Nul & @Exit 0
If 0 Equ 0 @Goto :Eof %= 防止因特殊字符而出错 =%
@Goto :Eof
:PrintMenu
@Cls
For /L %%I in (0,1,1) Do Echo.
Echo.    欢迎使用 Hope(R) Any2Bat 实用程序
Set /P Str=#    <Nul
For /L %%I in (0,1,71) Do Set /P Str=#=<Nul
Echo.
For /L %%I in (0,1,2) Do Echo.
Echo.    1) 新建工程
Echo.
Echo.    2) 阅读帮助文档
Echo.
Echo.    3) 退出 Hope(R) Any2Bat
Echo.
Set /P Str=#    请选择:[ ]<Nul
@Goto :Eof
:Choice
%_Getch:#ascCode#=ascKey%
@Goto :Eof
:LoadFunctions
Set _Getch=Set "#ascCode#=" ^& ( For /F "Usebackq Delims=" %%_ in (`XCopy /L /W "%~f0" "%~f0" 2^^^>Nul`) Do If Not Defined #ascCode# ( Set "#ascCode#=%%_") ) ^& Call Set "#ascCode#=%%#ascCode#:~-1%%"
@Goto :Eof
:NewProject
@Call :PrintWizardTitle
Set FileName=//
Set /P FileName=#    请将需要打包的文件拖入此窗体:
Set FileName=%FileName:"=%
Set FileName="%FileName%"
If Exist %FileName% @Goto :NewProject1
If Not Exist %FileName% (
Echo.
Echo.
Echo.    无此文件!
Pause > Nul
@Goto :NewProject
)
@Goto :NewProject
:NewProject1
@Call :PrintWizardTitle
Set IsCompress=//
Set jFileName=//
For /F "Delims=" %%I in ('Dir /A-D /B %FileName%') Do (
%= 仅文件名 =%
Set jFileName=%%~nI
Set jstFileName=%%~nI
%= 仅文件拓展名 =%
Set jExtension=%%~xI
)
Set jFileName=%jFileName: =%
Echo.    需要将源文件压缩吗?
Echo.
Echo.    假如您的源文件体积较大,那么压缩后可以减小包的大小,增加解包的效率;如果
Echo.    您的源文件体积较小,那么压缩后可能会适得其反。
Echo.
Echo.
Set /P Str=#    需要压缩吗?[Y/N]:[ ]<Nul
@Call :Choice
If /I "%ascKey%"=="Y" (
Set /P Str=#Y]<Nul
Set IsCompress=True
@Goto :NewProject2
)
If /I "%ascKey%"=="N" (
Set /P Str=#N]<Nul
Set IsCompress=False
@Goto :NewProject2
)
If 0 Equ 0 @Goto :NewProject1 %= 防止因特殊字符而出错 =%
@Goto :NewProject1
:NewProject2
@Cls
Echo.
Echo.  ^>^> 正在创建工程目录
FOR /F "TOKENS=2 DELIMS==" %%I IN ('WMIC PATH WIN32_OPERATINGSYSTEM GET LOCALDATETIME /VALUE ^| FINDSTR "="') DO (
SET "STRDATE=%%I"
)
SET "TODAY=%STRDATE:~0,4%%STRDATE:~4,2%%STRDATE:~6,2%"
SET "NOW=%STRDATE:~0,4%-%STRDATE:~4,2%-%STRDATE:~6,2% %STRDATE:~8,2%#%STRDATE:~10,2%#%STRDATE:~12,2%"
Md "Project_%NOW%" > Nul 2> Nul
Cd /D "Project_%NOW%"
Md "Temp" > Nul 2> Nul
Cd Temp
If /I "%IsCompress%"=="False" (
Copy %FileName% "%Cd%\Source.Src" > Nul 2> Nul
For /F "Delims=" %%I in ('Dir /B Source.Src') Do Set jFileSize=%%~zI
Set hFileName=Source.Src
Set FName=%jstFileName%%jExtension%
)
If /I "%IsCompress%"=="True" (
Copy %FileName% "%Cd%\Source.$" > Nul 2> Nul
Echo.
Echo.  ^>^> 正在压缩
For /F "Delims=" %%I in ('Dir /B Source.$') Do Set jFileSize=%%~zI
MakeCAB /D CompressionType=lzx /D CompressionMemory=21 /D maxdisksize=%jFileSize% %FileName% "%Cd%\%jFileName%.Cab" > Nul 2> Nul
For /F %%I in ('Dir /B "%jFileName%.Cab"') Do Set jFileSize=%%~zI
Set hFileName=%jFileName%.Cab
Set FName=%jFileName%.Cab
)
@Call :GetHex
Cd..
Md "Release" > Nul 2> Nul
Copy "Temp\Hex.Tmp" "Release\Hex.Tmp" > Nul 2> Nul
Cd /D "Release"
@Call :MakeBatch
@Goto :NewProject3
:NewProject3
Echo.
Echo.  ^>^> 已完成打包任务,是否进行查看和调试?
Echo.
Echo.
Set /P Str=#    需要调试和查看吗?[Y/N]:[ ]<Nul
@Call :Choice
If /I "%ascKey%"=="Y" (
Set /P Str=#Y]<Nul
Start Mk.Bat
Start Explorer "%Cd%"
@Goto :Main
)
If /I "%ascKey%"=="N" (
@Goto :Main
)
If 0 Equ 0 @Goto :NewProject1 %= 防止因特殊字符而出错 =%
@Goto :NewProject3COPY
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

本帖最后由 HOPE2021 于 2022-6-5 15:15 编辑

1.0.0002下半部分
:GetHex
Echo.
Echo.  ^>^> 正在获取文件十六进制信息,此步骤将耗费较多时间,请耐心等待……
Fsutil File CreateNew 1.$ %jFileSize% > Nul 2> Nul
FC /B "%hFileName%" 1.$ > 2.$
@Call :WriteVBS 1 2.$ 3.$
Echo.
Echo.  ^>^> 正在整理文件十六进制信息,此步骤将耗费较多时间,请耐心等待……
Cscript //Nologo WriteBin.VBS
@Call :WriteVBS 2 %jFileSize%
Echo.
Echo.  ^>^> 正在找回文件遗漏的十六进制信息,此步骤将耗费较多时间,请耐心等待……
Cscript //Nologo WriteBn2.VBS
FC /B "%hFileName%" 2.Tmp > 4.$
@Call :WriteVBS 1 4.$ 5.$
Echo.
Echo.  ^>^> 正在重新整理文件十六进制信息,此步骤将耗费较多时间,请耐心等待……
Cscript //Nologo WriteBin.VBS
Type 3.$ > tHexS.$
Type 5.$ >> tHexS.$
Echo.
Echo.  ^>^> 正在生成文件十六进制信息,此步骤将耗费较多时间,请耐心等待……
Sort /Unique tHexS.$ /O tHex.Tmp
Echo.
Echo.  ^>^> 正在生成文件十六进制码,此步骤将耗费较多时间,请耐心等待……
@Call :WriteVBS 3 tHex.Tmp Hex.Tmp
Cscript //Nologo WriteBn3.VBS
@Goto :Eof
:MakeBatch
Echo.
Echo.  ^>^> 正在生成批处理脚本,此步骤将耗费较多时间,请耐心等待……
(
Echo.Dim objFSO, objFile, strLine
Echo.Dim objOpFSO, objOpFile, strOpLine
Echo.Dim i
Echo.Set objFSO = CreateObject^("Scripting.FileSystemObject"^)
Echo.Set objOpFSO = CreateObject^("Scripting.FileSystemObject"^)
Echo.Set objFile = objFSO.OpenTextFile^("Hex.Tmp", 1^)
Echo.Set objOpFile = objOpFSO.CreateTextFile^("Mk.Bat"^)
Echo.objOpFile.Write "@Echo Off" ^& vbCrLf ^& "@Goto :Main" ^& vbCrLf ^& vbCrLf ^& ":Main" ^& vbCrLf ^& vbTab ^& "@Call :Mk_%jFileName%" ^& vbCrLf ^& "@Exit /B" ^& vbCrLf ^& vbCrLf ^& ":Mk_%jFileName%" ^& vbCrLf ^& "Cd. > Mk.$" ^& vbCrLf
Echo.i = 0
Echo.Do Until objFile.atendofstream
Echo. If i = 0 Then objOpFile.Write "(" ^& vbCrLf
Echo. If ^(i + 1^) Mod 256 = 0 Then objOpFile.Write ") >> Mk.$" ^& vbCrLf ^& "(" ^& vbCrLf
Echo. strLine = objFile.ReadLine
Echo. objOpFile.WriteLine "Echo." ^& strLine
Echo. i = i + 1
Echo.Loop
Echo.If i Mod 256 ^<^> 0 Then objOpFile.Write ") >> Mk.$" ^& vbCrLf
Echo.If i Mod 256 = 0 Then objOpFile.Write "Cd.) >> Mk.$" ^& vbCrLf
Echo.objFile.Close
Echo.objOpFile.Close
Echo.Set objFSO = Nothing
Echo.Set objOpFSO = Nothing
) > $Make.VBS
Cscript //Nologo $Make.VBS
(
Echo.^(
Echo.Echo.Dim objFSO, objFile, strLine
Echo.Echo.Dim objOpFSO, objOpFile, strOpLine
Echo.Echo.Dim i
Echo.Echo.Set objFSO = CreateObject^^^("Scripting.FileSystemObject"^^^)
Echo.Echo.Set objOpFSO = CreateObject^^^("Scripting.FileSystemObject"^^^)
Echo.Echo.Set objFile = objFSO.OpenTextFile^^^("Mk.$", 1^^^)
Echo.Echo.Set objOpFile = objOpFSO.CreateTextFile^^^("Mk_.VBS"^^^)
Echo.Echo.objOpFile.Write "Dim Bin_" ^^^& vbCrLf ^^^& "Bin_ = Array("
Echo.Echo.Do Until objFile.AtEndOfStream
Echo.Echo. strLine = objFile.ReadLine
Echo.Echo. For i = 1 To Len^^^(strLine^^^) Step 2
Echo.Echo. objOpFile.Write "&H" ^^^& Mid^^^(strLine, i, 2^^^) ^^^& ", "
Echo.Echo. Next
Echo.Echo. objOpFile.Write "_ " ^^^& vbCrLf
Echo.Echo.Loop
Echo.Echo.objOpFile.Write "-1)" ^^^& vbCrLf ^^^& vbCrLf
Echo.Echo.objOpFile.WriteLine "Call WriteBinary(""%FName%"", Bin_)"
Echo.Echo.objOpFile.Write vbCrLf
Echo.Echo.objOpFile.WriteLine "Sub WriteBinary(FileName, Buf)"
Echo.Echo.objOpFile.WriteLine " Dim I, aBuf, Size, bStream"
Echo.Echo.objOpFile.WriteLine " Size = UBound(Buf) - 1: ReDim aBuf(Size \ 2)"
Echo.Echo.objOpFile.WriteLine " For I = 0 To Size - 1 Step 2"
Echo.Echo.objOpFile.WriteLine " aBuf(I \ 2) = ChrW(Buf(I + 1) * 256 + Buf(I))"
Echo.Echo.objOpFile.WriteLine " Next"
Echo.Echo.objOpFile.WriteLine " If I = Size Then aBuf(I \ 2) = ChrW(Buf(I))"
Echo.Echo.objOpFile.WriteLine " aBuf=Join(aBuf, """")"
Echo.Echo.objOpFile.WriteLine " Set bStream = CreateObject(""ADODB.Stream"")"
Echo.Echo.objOpFile.WriteLine " bStream.Type = 1: bStream.Open"
Echo.Echo.objOpFile.WriteLine " With CreateObject(""ADODB.Stream"")"
Echo.Echo.objOpFile.WriteLine " .Type = 2 : .Open: .WriteText aBuf"
Echo.Echo.objOpFile.WriteLine " .Position = 2: .CopyTo bStream: .Close"
Echo.Echo.objOpFile.WriteLine " End With"
Echo.Echo.objOpFile.WriteLine " bStream.SaveToFile FileName, 2: bStream.Close"
Echo.Echo.objOpFile.WriteLine " Set bStream = Nothing"
Echo.Echo.objOpFile.WriteLine "End Sub"
Echo.Echo.objFile.Close
Echo.Echo.objOpFile.Close
Echo.Echo.Set objFSO = Nothing
Echo.Echo.Set objOpFSO = Nothing
Echo.^) ^> Mk$.VBS
) >> Mk.Bat
(
Echo.Cscript //Nologo Mk$.VBS
Echo.Cscript //Nologo Mk_.VBS
If /I %IsCompress%==True Echo.Expand /R "%FName%" ^> Nul 2^> Nul
If /I %IsCompress%==True Echo.If Exist "%FName%" Del /Q "%FName%" ^> Nul 2^> Nul
Echo.If Exist "Mk_.VBS" Del /Q "Mk_.VBS" ^> Nul 2^> Nul
Echo.If Exist "Mk$.VBS" Del /Q "Mk$.VBS" ^> Nul 2^> Nul
Echo.If Exist "Mk.$" Del /Q "Mk.$" ^> Nul 2^> Nul
Echo.@Goto :Eof
) >> Mk.Bat
If Exist Hex.Tmp Del /Q Hex.Tmp
If Exist $Make.VBS Del /Q $Make.VBS
@Goto :Eof
:WriteVBS
If %1==1 (
(
Echo.Dim objFSO, objFile, strLine
Echo.Dim objOpFSO, objOpFile, strOpLine
Echo.Set objFSO = CreateObject^("Scripting.FileSystemObject"^)
Echo.Set objOpFSO = CreateObject^("Scripting.FileSystemObject"^)
Echo.Set objFile = objFSO.OpenTextFile^("%2", 1^)
Echo.Set objOpFile = objOpFSO.CreateTextFile^("%3"^)
Echo.objFile.SkipLine
Echo.Do Until objFile.atendofstream
Echo. strLine = objFile.ReadLine
Echo. strOpLine = Split^(strLine, " "^)
Echo. objOpFile.WriteLine strOpLine^(0^) ^& strOpLine^(1^)
Echo.Loop
Echo.objFile.Close
Echo.objOpFile.Close
Echo.Set objFSO = Nothing
Echo.Set objOpFSO = Nothing
) > WriteBin.VBS
)
If %1==2 (
(
Echo.Dim objFSO, objFile, strLine, i
Echo.Set objFSO = CreateObject^("Scripting.FileSystemObject"^)
Echo.Set objFile = objFSO.CreateTextFile^("2.Tmp"^)
Echo.For i = 0 To %2 - 1
Echo. objFile.Write Chr^(65^)
Echo.Next
Echo.objFile.Close  
Echo.Set objFSO=Nothing
) > WriteBn2.VBS
)
If %1==3 (
(
Echo.Dim objFSO, objFile, strLine
Echo.Dim objOpFSO, objOpFile, strOp
Echo.Dim i
Echo.Set objFSO = CreateObject^("Scripting.FileSystemObject"^)
Echo.Set objOpFSO = CreateObject^("Scripting.FileSystemObject"^)
Echo.Set objFile = objFSO.OpenTextFile^("%2", 1^)
Echo.Set objOpFile = objOpFSO.CreateTextFile^("%3"^)
Echo.i = 0
Echo.Do Until objFile.atendofstream
Echo. strLine = objFile.ReadLine
Echo. strOp = Split^(strLine, ":"^)
Echo. objOpFile.Write strOp^(1^)
Echo. If ^(i + 1^) Mod 32 = 0 Then objOpFile.Write vbCrLf
Echo. i = i + 1
Echo.Loop
Echo.objFile.Close
Echo.objOpFile.Close
Echo.Set objFSO = Nothing
Echo.Set objOpFSO = Nothing
) > WriteBn3.VBS
)
@Goto :Eof
:PrintWizardTitle
@Cls
For /L %%I in (0,1,1) Do Echo.
Echo.    新建工程向导
Set /P Str=#    <Nul
For /L %%I in (0,1,71) Do Set /P Str=#=<Nul
Echo.
For /L %%I in (0,1,1) Do Echo.
@Goto :Eof
:ReadHelp
@Cls
For /L %%I in (0,1,1) Do Echo.
Echo.  Hope(R) Any to Bat 自述文档
Echo.
Echo.  Hope Any to Bat [Version 1.1.00002]
Echo.  (C) Copyright 2016-2022 Hope Corp.
Echo.
Echo.  ·Hope(R) Any to Bat 是什么
Echo.      Hope(R) Any to Bat 是一款批处理嵌入包设计软件,它可以将任何文件插入到批
Echo.      处理脚本中,并自动设计解包程序。此程序支持VBS技术,能更快的完成操作。
Echo.
Echo.  ·Hope(R) Any to Bat 更新日志
Echo.      ·Version 1.0.0000 09/08/2021
Echo.
Echo.      ·Version 1.0.0001[未发布] 19/08/2021
Echo.        首次尝试VBS内核,兼容性极差
Echo.
Echo.      ·Version 1.0.0002 05/06/2022
Echo.        重新设计VBS内核,速度增强,
Echo.        更改了界面。
Echo.        未解决兼容性问题,打包程序目前只在 Windows 10 测试正常。
Pause > Nul
@Goto :EofCOPY
1

评分人数

    • what: 360无痕永远滴神技术 + 1
Why join the navy, if you can be a pirate? - Steve Jobs

TOP

返回列表