本人思考这个方法的初衷是在RAMOS内存系统下,将绿软件压缩以节约空间,如果不运行,就是个压缩文件。
WINRAR自解压文件无法删除自身的原因在于自己不能给自己剃头,因为程序正在运行中,所以必须在进程中杀死它才能删除自身,因而思路是:建立一个批处理文件来完成这道工序。
在本人的内存系统下的思路是,做一个假的程序运行文件去运行这个批处理文件后,在系统进程中杀掉假运行文件,然后命令它解压WINRAR自解压文件,用真运行文件替换假运行文件,最后删除WINRAR文件,批处理文件也可删除自身,实现无痕迹解压并运行,总共分三步:
1. 建立一个批处理文件,用一个叫做BAT转exe的小软件将它转成exe文件,为了美化,可以用图标软件给它加上自己喜欢的图标,如果第二步的批处理文件名称不变,这个exe文件可通用于任何程序下。这样写:
@ECHO OFF
MLD.BAT
REM 运行的批处理文件起名为MLD.BAT,
WINRAR自解压文件无法删除自身的原因在于自己不能给自己剃头,因为程序正在运行中,所以必须在进程中杀死它才能删除自身,因而思路是:建立一个批处理文件来完成这道工序。
在本人的内存系统下的思路是,做一个假的程序运行文件去运行这个批处理文件后,在系统进程中杀掉假运行文件,然后命令它解压WINRAR自解压文件,用真运行文件替换假运行文件,最后删除WINRAR文件,批处理文件也可删除自身,实现无痕迹解压并运行,总共分三步:
1. 建立一个批处理文件,用一个叫做BAT转exe的小软件将它转成exe文件,为了美化,可以用图标软件给它加上自己喜欢的图标,如果第二步的批处理文件名称不变,这个exe文件可通用于任何程序下。这样写:
@ECHO OFF
MLD.BAT
REM 运行的批处理文件起名为MLD.BAT,
EXIT
2.建立中介批处理文件MLD.BAT,示例如下(以KMPLAYER为例,压缩文件起名为SLF.EXE)
@ECHO OFF
if "%1"=="h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
for /l %%i in (1,1,300) do echo %%i >nul
rem 延时
NIRCMD.EXE
rem 这是用的NIRCMD增强命令,不安装NIRCMD直接用DOS命令时,可这样写——TASKKILL /F / /T
for /l %%i in (1,1,300) do echo %%i >nul
REM 延时
SLF.EXE
2.建立中介批处理文件MLD.BAT,示例如下(以KMPLAYER为例,压缩文件起名为SLF.EXE)
@ECHO OFF
if "%1"=="h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
for /l %%i in (1,1,300) do echo %%i >nul
rem 延时
NIRCMD.EXE
rem 这是用的NIRCMD增强命令,不安装NIRCMD直接用DOS命令时,可这样写——TASKKILL /F / /T
for /l %%i in (1,1,300) do echo %%i >nul
REM 延时
SLF.EXE
rem 运行压缩的自解压程序
for /l %%i in (1,1,300) do echo %%i >nul
rem 延时
/f
rem 删除自解压程序
del %0
rem 删除本bat文件自身,免留痕迹
EXIT
3. 压缩WINRAR自解压文件时,要注意解压后文件与前两个文件在同一目录下,以便于运行,在“高级”选项的“自解压选项”下,将“设置”下的“解压后运行文件”五一法定假几天中填写上要运行的主程序名称.exe;将“空间歌曲链接模式”下的“安静模式”选“全部隐藏”;将“更新”下的“更新方式”选为“他___了作文400字五年级解压并替换文件”,“覆盖方式”选“覆盖所有文件”。
这样就成功了,这里给个示例,pan.baidu/share/link?shareid=445792&uk=203
for /l %%i in (1,1,300) do echo %%i >nul
rem 延时
/f
rem 删除自解压程序
del %0
rem 删除本bat文件自身,免留痕迹
EXIT
3. 压缩WINRAR自解压文件时,要注意解压后文件与前两个文件在同一目录下,以便于运行,在“高级”选项的“自解压选项”下,将“设置”下的“解压后运行文件”五一法定假几天中填写上要运行的主程序名称.exe;将“空间歌曲链接模式”下的“安静模式”选“全部隐藏”;将“更新”下的“更新方式”选为“他___了作文400字五年级解压并替换文件”,“覆盖方式”选“覆盖所有文件”。
这样就成功了,这里给个示例,pan.baidu/share/link?shareid=445792&uk=203
1006351 绝对没有病毒。这是很早以前做的,MLD.BAT批处理文件中没有最后删除自身的一句 del %0,可自己加上
另一种制作单文件可删除自解压文件的方法:
若安装了nircmd,可用另一种方法制作自解压文件,实现单文件自解压并删除:做一个bat文件放在压缩包内,在压缩时的高级->自解压选项->SEO如何优化设置->解压后运行中填写批处理文件名称,bat文件这样写(以压缩文件名称为例):
@ECHO OFF
if "%1"=="h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
for /l %%i in (1,1,300) do echo %%i >nul
NIRCMD.EXE
rem taskkill命令似乎不能终止进程,其它win自带命令或可,可自行测试。
for /l %%i in (1,1,300) do echo %%i >nul
@ECHO OFF
if "%1"=="h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
for /l %%i in (1,1,300) do echo %%i >nul
NIRCMD.EXE
rem taskkill命令似乎不能终止进程,其它win自带命令或可,可自行测试。
for /l %%i in (1,1,300) do echo %%i >nul
/f
for /l %%i in (1,1,300) do echo %%i >nul
del %0
EXIT
2022两会是几号开始几号结束
for /l %%i in (1,1,300) do echo %%i >nul
del %0
EXIT
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论