无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 1954|回复: 22
打印 上一主题 下一主题

[原创] 系统自带的 wscript.exe 也可以接管 winpeshl.exe

[复制链接]
跳转到指定楼层
1#
发表于 2024-8-18 20:13:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 兰中闲人 于 2024-8-26 21:46 编辑



一、方法

1、需要支持 wscript.exe 的文件,用微软工具套件中的 Procmon 很容易得到。

2、注册表 SYSTEM\SETUP 下 CMDLINE 的值改为 X:\windows\system32\wscript.exe X:\windows\system32\peset.vbs

3、删除 winpeshl.exe、winpeshl.ini 、startnet.cmd 三个文件。

二、两个启动文件

1、复制下面代码保存为 peset.vbs 文件(原采用 hta 文件,遵从 slore 大师高见,改用 js 文件。在此向 slore 大师表示深深谢意!因 js 代码难搞,又改用 vbs 文件。)。

=====
set Objectwsh = CreateObject("WScript.Shell")
Objectwsh.Run "wpeinit.exe"Objectwsh.Run "explorer.exe"
Objectwsh.Run "peset.cmd",0

‘     注:此外可添加多个可执行文件和脚本。
set Objectwsh = nothing
Do While True
    WScript.Sleep 1800000
Loop
=====

2、复制下面代码保存为 peset.cmd 文件,放在 windows\system32 文件夹
注:其中代码只是示例,可以随便改写。

=====
rem        修改 SystemSetupInProgress 值。
reg add "HKLM\SYSTEM\Setup" /v SystemSetupInProgress /t REG_DWORD /d 0 /f >nul 2>nul
rem        网络指示器 …… ……
net start netprofm >nul 2>nul
rem        启动输入法
start %windir%\system32\ctfmon.exe >nul 2>nul
…… ……
rem        修改 SystemSetupInProgress 值。
reg add "HKLM\SYSTEM\Setup" /v SystemSetupInProgress /t REG_DWORD /d 1 /f >nul 2>nul
exit
=====









2#
发表于 2024-8-18 20:28:50 | 只看该作者
好!
回复

使用道具 举报

3#
发表于 2024-8-18 21:14:30 | 只看该作者
感谢分享
回复

使用道具 举报

4#
发表于 2024-8-18 21:29:49 | 只看该作者
没看明白,pe启动不是本来就很简单吗 ?  wim格式的pe,随意放到硬盘上,用个boot.sdi文件,bootice引导一下,就能启动啊;iso格式的pe,用grubfm引导就行。
       您这不是太麻烦了吗... 还有mshta是啥,我的win11,开始运行里输入mshta,即不报错也没任何提示,cmd下输入mshta,也是即不报错也没反应。
回复

使用道具 举报

5#
发表于 2024-8-18 23:30:44 | 只看该作者
感谢分享
回复

使用道具 举报

6#
发表于 2024-8-19 12:51:00 | 只看该作者
谢谢楼主!
回复

使用道具 举报

7#
发表于 2024-8-19 17:08:08 | 只看该作者
好好学习下
回复

使用道具 举报

8#
发表于 2024-8-19 21:42:03 | 只看该作者
只是为了隐藏运行,用wscript.exe执行js或者vbs脚本启动cmd文件,比mshta.exe依赖少,网页组件不需要。

点评

高人是一语中的! 求教一下,用wscript.exe执行js或者vbs脚本隐藏启动cmd文件,在 winpeshl.ini 文件中怎么写?谢谢。 因自己用 hta 编写了开始菜单和几个将命令行图形化的小工具,才加了网页组件。  详情 回复 发表于 2024-8-19 23:42
回复

使用道具 举报

9#
 楼主| 发表于 2024-8-19 23:42:57 | 只看该作者
slore 发表于 2024-8-19 21:42
只是为了隐藏运行,用wscript.exe执行js或者vbs脚本启动cmd文件,比mshta.exe依赖少,网页组件不需要。

高人是一语中的!

求教一下,用wscript.exe执行js或者vbs脚本隐藏启动cmd文件,在 winpeshl.ini 文件中怎么写?谢谢。

因自己用 hta 编写了开始菜单和几个将命令行图形化的小工具,才加了网页组件。
回复

使用道具 举报

10#
发表于 2024-8-20 00:51:23 | 只看该作者
基本思路就是把hta中的脚本部分保存成脚本文件,直接用wscript.exe调用。
没测试,也许需要适当的修改下。

peset.js
  1. function openFile(x,y) {
  2.         var obj=new ActiveXObject("wscript.shell");
  3.         obj.Run(x,y,false);
  4.         obj=null;
  5. }
  6. openFile("explorer.exe",1);
  7. openFile("peset.cmd",0);
复制代码


winpeshl.ini 文件
  1. [LaunchApps]
  2. X:\windows\system32\wscript.exe /E:jscript X:\windows\system32\peset.js
复制代码


点评

似乎不行,js 无窗口,vbs 执行完代码后窗口也关闭,winpeshl 也随其打开的第一个窗口的没有或关闭而重启。hta 文件打开后可以隐藏自己,只要不关机就会持续存在,也就能保证 winpeshl 持续存在不重启。这是 hta 文  详情 回复 发表于 2024-8-20 02:44
多谢!这么晚还没歇呢?祝安好!  详情 回复 发表于 2024-8-20 01:01
回复

使用道具 举报

11#
 楼主| 发表于 2024-8-20 01:01:52 | 只看该作者
slore 发表于 2024-8-20 00:51
基本思路就是把hta中的脚本部分保存成脚本文件,直接用wscript.exe调用。
没测试,也许需要适当的修改下。 ...

多谢!这么晚还没歇呢?祝安好!
回复

使用道具 举报

12#
 楼主| 发表于 2024-8-20 02:44:49 | 只看该作者
本帖最后由 兰中闲人 于 2024-8-20 02:52 编辑
slore 发表于 2024-8-20 00:51
基本思路就是把hta中的脚本部分保存成脚本文件,直接用wscript.exe调用。
没测试,也许需要适当的修改下。 ...

反复试了多次,似乎不行。原因应该是,js 无窗口,vbs 执行完代码后窗口也关闭,winpeshl 也随其打开的第一个窗口的没有或关闭而重启。hta 文件打开后可以隐藏自己,只要不关机就会持续存在,也就能保证 winpeshl 持续存在不重启。这是  hta 文件起到的主要作用,隐藏运行其它文件只是附带的作用。

不过,还是谢谢指点。

点评

>只要不关机就会持续存在,也就能保证 winpeshl 持续存在不重启。这是 hta 文件起到的主要作用 peset.cmd的最后加一个 pause 不就完事了?  详情 回复 发表于 2024-8-20 09:47
回复

使用道具 举报

13#
发表于 2024-8-20 09:47:00 | 只看该作者
本帖最后由 slore 于 2024-8-20 09:56 编辑
兰中闲人 发表于 2024-8-20 02:44
反复试了多次,似乎不行。原因应该是,js 无窗口,vbs 执行完代码后窗口也关闭,winpeshl 也随其打开的第 ...

>只要不关机就会持续存在,也就能保证 winpeshl 持续存在不重启。这是  hta 文件起到的主要作用

peset.cmd的最后不exit 加一个 pause 不就完事了?
嫌多一个cmd.exe进程的话,peset.js的最后加个Sleep一直等待也行。
  1. while (1) WScript.Sleep(3600000)
复制代码

回复

使用道具 举报

14#
 楼主| 发表于 2024-8-20 22:02:49 | 只看该作者
本帖最后由 兰中闲人 于 2024-8-20 22:07 编辑

用 js 可以,只是 setTimeou 找了多种方法都没有效果,而同样的代码放在 hta 里却有效,能设定组件启动顺序,解决了一些问题。不要见笑,本人于电脑方面就一个白丁,一切在度娘上找。谢谢!

点评

一般搜索的js都是JavaScript,网页里面可以用。 但是不是微软的jscript,一些功能和方法是不同的。  详情 回复 发表于 2024-8-20 22:47
回复

使用道具 举报

15#
发表于 2024-8-20 22:35:00 | 只看该作者

好好学习下
回复

使用道具 举报

16#
发表于 2024-8-20 22:47:01 | 只看该作者
兰中闲人 发表于 2024-8-20 22:02
用 js 可以,只是 setTimeou 找了多种方法都没有效果,而同样的代码放在 hta 里却有效,能设定组件启动顺序 ...

一般搜索的js都是JavaScript,网页里面可以用。
但是不是微软的jscript,一些功能和方法是不同的。
回复

使用道具 举报

17#
发表于 2024-8-22 15:50:16 | 只看该作者
感谢楼主分享
回复

使用道具 举报

18#
发表于 2024-8-23 11:40:01 | 只看该作者
学习了,感谢分享支持一下
回复

使用道具 举报

19#
发表于 2024-8-23 11:47:42 | 只看该作者
谢谢分享!
回复

使用道具 举报

20#
发表于 2024-8-25 14:10:32 来自手机 | 只看该作者
л
回复

使用道具 举报

21#
发表于 2024-8-26 08:06:54 | 只看该作者
谢谢分享
回复

使用道具 举报

22#
发表于 2024-8-28 10:39:50 | 只看该作者
学习了有空试试,感谢大佬分享经验
回复

使用道具 举报

23#
发表于 2024-10-18 14:43:23 | 只看该作者
感谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-22 19:41

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表