无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: slore
打印 上一主题 下一主题

[原创] (2022-02-02 更新) Re:WIN10XPE - 从零开始构建的全功能PE

    [复制链接]
1321#
发表于 2019-9-5 08:04:18 | 只看该作者
本帖最后由 liuzhaoyzz 于 2019-9-5 12:34 编辑


1、
LINK是创建快捷方式,第一个参数是快捷方式的路径,和文件名。
程序组也可以啊。你把Desktop改成Programs就好了。

你上面是笔误吧,link的第二个参数似乎才是快捷方式的路径,和文件名。
call Link "#Programs#p\7-zip" "#pProgramFiles#p\7-zip\7zFM.exe"

2、另外,我用的是LUA启动器+explorer.exe作为shell,默认admin登录,点了桌面上面的switchuser切换到system用户无效,是不是只能单向切换?

3、用admin登录感觉比system登录要慢,虚拟机试了大概要25秒才见到桌面,是正常的吗?
回复

使用道具 举报

1322#
发表于 2019-9-5 08:15:25 | 只看该作者
本帖最后由 WAIGO 于 2019-9-5 08:16 编辑

有个问题想请您帮忙解决。现在用 WimBuilder2 制作出来的 PE,全是 winxpe 这个名称。由於联网计算机不可以同名。故而就算勾选 "启用网络发现",也找不到联网的其它计算机(见图一)。就算想把另一部改名也没法即时见效(见图二)。





恳请告知要如何修改设置,才可以制作岀隨机选择的计算机名称?谢谢!
回复

使用道具 举报

1323#
发表于 2019-9-5 09:33:05 | 只看该作者
构建-系统-机器名 设置为空。
-----------------------------------------------
构建分页哪有 "系统-机器名" ?

回复

使用道具 举报

1324#
发表于 2019-9-5 09:44:44 | 只看该作者
WAIGO 发表于 2019-9-5 08:15
有个问题想请您帮忙解决。现在用 WimBuilder2 制作出来的 PE,全是 winxpe 这个名称。由於联网计算机不可以 ...


请教下你的WIFI网卡驱动怎么加上的
回复

使用道具 举报

1325#
发表于 2019-9-5 09:53:54 | 只看该作者
5603572 发表于 2019-9-5 09:44
请教下你的WIFI网卡驱动怎么加上的

增加额外的无线驱动包。
回复

使用道具 举报

1326#
发表于 2019-9-5 10:15:37 | 只看该作者
WAIGO 发表于 2019-9-5 09:53
增加额外的无线驱动包。

能麻烦告诉下方法吗,懂的不多见谅哈
回复

使用道具 举报

1327#
发表于 2019-9-5 10:53:46 | 只看该作者
5603572 发表于 2019-9-5 09:44
请教下你的WIFI网卡驱动怎么加上的

有点麻烦,等发布后您再看看……
回复

使用道具 举报

1328#
发表于 2019-9-5 13:25:15 | 只看该作者
liuzhaoyzz 发表于 2019-9-2 07:49
非常感谢大神详尽的回复,解决了我很多的疑问。
我下载了1236楼您发布的v2019.09.01版本。
选择defau ...

你也说了目的是尽量小的体积做远程维护,那么结合你的维护环境看有哪些不需要的组件?还有是否有线、无线环境都需要考虑(我添加较完善的无线驱动WIM体积都要新增100MB左右)?另外既然构建的是Win10 PE而且应该是新内核的10PE(Winbuilder2对于新的内核工程构建有极大的优势)那么极小的体积实现肯定有困难,我构建了一个18362.30的内核,新增无线驱动、大量维护工具、远程工具并且保留DWM、原生USB弹出、网络发现、Bitlocker解密等等功能的基础上尽力精简到了700MB左右,再小就我目前的能力和精力而言办不到了!
回复

使用道具 举报

1329#
发表于 2019-9-5 13:37:09 | 只看该作者
liuzhaoyzz 发表于 2019-9-2 07:49
非常感谢大神详尽的回复,解决了我很多的疑问。
我下载了1236楼您发布的v2019.09.01版本。
选择defau ...

因为我的远程维护环境还涉及各类网盘的支持、QQ安装版支持、较完整浏览器支持(集成的世界之窗不压缩就有100多MB)所以补充了不少Dll文件,体积700MB已经是我的极限了

点评

狐狸大哥厉害 500MB实现这些我还办不到 哈哈 另外还有一些其它的维护软件 例如分区工具 数据恢复工具 网络下载工具 密码清除工具 硬件检测工具 系统安装工具 图片处理工具等 Adnmin账户只是备用 我有高版本的TV可在S  详情 回复 发表于 2019-9-5 15:25
你所要求的PE:有线、无线、administrator,大小差不多只有500MB。。  发表于 2019-9-5 13:46
QQ + 世界之窗压缩>100MB TV>50MB pandown>10MB 百度网盘客户端 >30MB  发表于 2019-9-5 13:45
回复

使用道具 举报

1330#
发表于 2019-9-5 13:56:38 | 只看该作者
      
你也说了目的是尽量小的体积做远程维护,那么结合你的维护环境看有哪些不需要的组件?还有是否有线、无线环境都需要考虑(我添加较完善的无线驱动WIM体积都要新增100MB左右)?另外既然构建的是Win10 PE而且应该是新


组件什么的都是自己根据自己的喜好,包括体积大小。同样的解决问题,体积更小,这背后本身就是技术的积累。

回复

使用道具 举报

1331#
发表于 2019-9-5 14:01:40 | 只看该作者
本帖最后由 WAIGO 于 2019-9-5 14:04 编辑

--
回复

使用道具 举报

1332#
发表于 2019-9-5 14:06:38 | 只看该作者


;统一计算机名:MININT
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName]
"ComputerName"="MININT"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName]
"ComputerName"="MININT"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"NV Hostname"="MININT"
"Hostname"="MININT"

点评

你这样子改,相同ISO启动,还是相同计算机名。。。 需要开机启动后再设定机器名。  详情 回复 发表于 2019-9-5 14:41
回复

使用道具 举报

1333#
发表于 2019-9-5 14:16:02 | 只看该作者
winre.wim 的 system文件 默认
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ComputerName\ComputerName
"ComputerName"="MININT"
回复

使用道具 举报

1334#
 楼主| 发表于 2019-9-5 14:41:46 | 只看该作者
foxfirefox 发表于 2019-9-5 14:06
;统一计算机名:MININT
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveC ...

你这样子改,相同ISO启动,还是相同计算机名。。。
需要开机启动后再设定机器名。
回复

使用道具 举报

1335#
发表于 2019-9-5 15:11:17 | 只看该作者
现在复制程序到X盘和设置桌面快捷方式的命令都OK了
大佬能不能再给2个放到开始菜单和任务栏的例子,我们不太懂的人借鉴参照
类似您的这个说明:
  1. 参数说明:
  2. TeamViewer14 --- vendor下面的文件夹
  3. "TeamViewer*便携版.zip" --- 需要匹配的文件格式(dir /b)
  4. "%X_PF%\TeamViewer"  --- 解压路径, 你也可以写 "X:\Program Files\TeamViewer", X_PF是环境变量,能短些.
复制代码
回复

使用道具 举报

1336#
发表于 2019-9-5 15:25:21 | 只看该作者
2011wanglei5207 发表于 2019-9-5 13:37
因为我的远程维护环境还涉及各类网盘的支持、QQ安装版支持、较完整浏览器支持(集成的世界之窗不压缩就有 ...

狐狸大哥厉害 500MB实现这些我还办不到 哈哈 另外还有一些其它的维护软件 例如分区工具 数据恢复工具 网络下载工具 密码清除工具 硬件检测工具 系统安装工具 图片处理工具等 Adnmin账户只是备用 我有高版本的TV可在SYSTEM账户下运行 所以“客户版”并没有添加Admin账户,双账户的仅做临时应急使用,目前个人感觉已经不错了!

点评

Admin账户肯定是可以的 另外你说的工程文件不知道你指什么?slore大佬的Winbuilder2制作的基础PE自己慢慢精简、新增、完善即可!  详情 回复 发表于 2019-9-5 15:39
我测试用administrator登录可以直接使用最新版的便携版TV,从官方下载还不用绿化什么的,直接解压就可以用了,感觉很好!我自己也是想DIY个带远程的PE,大佬你的工程文件能不能分享一些我学下怎么写批处理?  发表于 2019-9-5 15:31
回复

使用道具 举报

1337#
发表于 2019-9-5 15:39:23 | 只看该作者
2011wanglei5207 发表于 2019-9-5 15:25
狐狸大哥厉害 500MB实现这些我还办不到 哈哈 另外还有一些其它的维护软件 例如分区工具 数据恢复工具 网 ...

Admin账户肯定是可以的 另外你说的工程文件不知道你指什么?slore大佬的Winbuilder2制作的基础PE自己慢慢精简、新增、完善即可!

点评

因为我想的就是简单的把我想要的加的软件放插件列表内,自己选择添加,所以我想的是就是在 \Projects\WIN10XPE\02-Apps\ 目录下增加多个不同的软件目录,所以我想学的就是这些目录内的 main.bat 的写法。 我说的工  详情 回复 发表于 2019-9-5 15:45
回复

使用道具 举报

1338#
发表于 2019-9-5 15:45:49 | 只看该作者
2011wanglei5207 发表于 2019-9-5 15:39
Admin账户肯定是可以的 另外你说的工程文件不知道你指什么?slore大佬的Winbuilder2制作的基础PE自己慢慢 ...

因为我想的就是简单的把我想要的加的软件放插件列表内,自己选择添加,所以我想的是就是在 \Projects\WIN10XPE\02-Apps\ 目录下增加多个不同的软件目录,所以我想学的就是这些目录内的 main.bat 的写法。
我说的工程文件就是类似WIN10XPE里面的一些案例
回复

使用道具 举报

1339#
 楼主| 发表于 2019-9-5 15:53:43 | 只看该作者
5603572 发表于 2019-9-5 15:11
现在复制程序到X盘和设置桌面快捷方式的命令都OK了
大佬能不能再给2个放到开始菜单和任务栏的例子,我们不 ...

你先直接修改pecmd.ini最后那段内容,
以后会有宏命令,再之后代码都不用写。。。
回复

使用道具 举报

1340#
发表于 2019-9-5 15:55:55 | 只看该作者
大佬 六六六
回复

使用道具 举报

1341#
发表于 2019-9-5 16:05:36 | 只看该作者
slore 发表于 2019-9-1 21:30
v2019.09.01 更新:

强大 易用 安全 安心
回复

使用道具 举报

1342#
 楼主| 发表于 2019-9-5 16:51:54 | 只看该作者
slore 发表于 2019-9-5 15:53
你先直接修改pecmd.ini最后那段内容,
以后会有宏命令,再之后代码都不用写。。。

http://bbs.wuyou.net/forum.php?m ... &extra=page%3D3

ljycslg的wifidriver.zip自己放到U盘,ISO或者wim中,
需要时自己解压,设备管理器加载就好了。

需要自动加载的话,要开机执行驱动加载命令。

与精简无关,驱动包都是第三方程序,要收集整理,而且比较大,附件用不了,需要网盘了。我只有LAN,一个简单的Usb无线,不折腾驱动。
回复

使用道具 举报

1343#
 楼主| 发表于 2019-9-5 16:51:54 | 只看该作者
slore 发表于 2019-9-5 15:53
你先直接修改pecmd.ini最后那段内容,
以后会有宏命令,再之后代码都不用写。。。

http://bbs.wuyou.net/forum.php?m ... &extra=page%3D3

ljycslg的wifidriver.zip自己放到U盘,ISO或者wim中,
需要时自己解压,设备管理器加载就好了。

需要自动加载的话,要开机执行驱动加载命令。

与精简无关,驱动包都是第三方程序,要收集整理,而且比较大,附件用不了,需要网盘了。我只有LAN,一个简单的Usb无线,不折腾驱动。
回复

使用道具 举报

1344#
发表于 2019-9-5 20:36:18 | 只看该作者
本帖最后由 liuzhaoyzz 于 2019-9-5 23:38 编辑


1、有个软件做了个补丁包,我想在加载shell之后运行一个关联注册表的可执行命令,我该怎么办?写在pecmd.lua还是pecmd.ini里面?写在哪个函数里面?PEMaterial和Autoruns是干啥用的,写在这里面可以吗?他们是什么时候被加载的,里面有好多批处理。
类似这样子的:
pecmd.lua:
exec('/hide', '"#pProgramFiles#p\Imagine\Imagine64.exe" /assocext')

pecmd.ini:
pecmd.exe exec ! "%ProgramFiles%\Imagine\Imagine64.exe" /assocext
启动器我选择的是lua,那么pecmd.ini还会不会得到执行?

有个RunBeforeShell宏命令,用于在外壳程序加载前执行(自动适配PECMD,LUA加载器)
有没有RunAfterShell这样子的宏命令,用于在外壳程序加载后执行(自动适配PECMD,LUA加载器)?

2、上面的功能,能否放在main.bat里面实现,怎么实现?用注册表导入可以吧?比如说写入到
HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run
HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Run
是否可行?哪个更有效?

自动注册表加载
install.wim/windows/system32/config下的各注册表自动挂载到
* HKLM\Src_Software
* HKLM\Src_System
* HKLM\Src_Default
...

winre.wim/windows/system32/config下的各注册表自动挂载到
* HKLM\Tmp_Software
* HKLM\Tmp_System
* HKLM\Tmp_Default
...

WIMBuilder2会挂载install.wim、winre.wim的注册表,那启动组倒底应该是哪个?
* HKLM\Src_Software\Microsoft\Windows\CurrentVersion\Run
* HKLM\Tmp_Software\Microsoft\Windows\CurrentVersion\Run

我试了,似乎是这个:* HKLM\Tmp_Software\Microsoft\Windows\CurrentVersion\Run
  1. main.bat
  2. rem 在HKLM\Tmp_SOFTWARE\Microsoft\Windows\CurrentVersion\Run启动组中添加注册命令,注意后面的路径不能带变量:
  3. Reg.exe add "HKLM\Tmp_SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "imagine" /t REG_SZ /d ""X:\Program Files\Imagine\Imagine64.exe" /assocext" /f
复制代码

回复

使用道具 举报

1345#
发表于 2019-9-5 22:24:18 | 只看该作者
slore 发表于 2019-9-3 08:28
每次打开, 选项变成默认选项, 如何保存之前的设定?

WimBuilder2之后会有导出选项, 保存选项的功能,  ...

打算依照您的建议,制作专用的补丁项目。还有下面几幅图中红框的项目不知道在什么地方修改,恳请老大指点一下。谢谢!









回复

使用道具 举报

1346#
 楼主| 发表于 2019-9-5 22:49:11 | 只看该作者
本帖最后由 slore 于 2019-9-5 23:14 编辑
liuzhaoyzz 发表于 2019-9-5 20:36
1、有个软件做了个补丁包,我想在加载shell之后运行一个关联注册表的可执行命令,我该怎么办?写在pecmd. ...


Src_Software是install.wim的注册表, 主要用regcopy 补充到 PE的注册表, 修改Src是没用的.

我想在加载shell之后运行一个关联注册表的可执行命令,我该怎么办?

如果是直接的reg注册表文件, 把reg文件放到:
AutoRuns\Startup\下面, 什么代码都不用写.


如果是命令, 创建下面的文件放到AutoRuns\Startup\下面.

ImagineAssoc.bat(名字你随意起)
  1. set RunOnce=1
  2. "%ProgramFiles%\Imagine\Imagine64.exe" /assocext
复制代码


无论用LUA, 还是PECMD, 甚至 startnet.cmd 启动, 都会运行这里.


PEMaterial和Autoruns是干啥用的,写在这里面可以吗?他们是什么时候被加载的,里面有好多批处理。


pecmd.lua, pecmd.ini, startnet.cmd 的PostShell()中会调用
Runner.bat Startup
回复

使用道具 举报

1347#
 楼主| 发表于 2019-9-5 23:01:28 | 只看该作者
本帖最后由 slore 于 2019-9-5 23:10 编辑
WAIGO 发表于 2019-9-5 22:24
打算依照您的建议,制作专用的补丁项目。还有下面几幅图中红框的项目不知道在什么地方修改,恳请老大指点 ...


右键 打开 补丁所在文件夹,
然后 打开 main.html .
对应的选项的name就是了.

都是简单的英文, 看不懂么?

构建页面, 有自己选择的选项.

笨办法,第一打开不选这些选项, 然后构建提示的选项复制出来保存 选项1.txt,
再重新到补丁页面, 勾选这些选项, 然后构建页面, 再把选项保存为 选项2.txt,
自己比较差分就是了.


[精简]本来就是选中的吧. custom.js 里面, 你看是不是有
uncheck_tree_node('za-Slim');

有的话,把这行删除, 或者添加2个斜杠注释掉 // uncheck_tree_node('za-Slim');

启动管理默认, 切换到PECMD选项卡:
D:\Dev\WimBuilder2\Projects\WIN10XPE\00-Configures\Loader\main.html 第88行,添加红色部分代码.
      $("#peloader_tab").ultab({header:['Lua', 'PECMD', 'System']});
      $("#peloader_tab li:eq(1)").click();
回复

使用道具 举报

1348#
发表于 2019-9-6 07:30:41 来自手机 | 只看该作者
本帖最后由 liuzhaoyzz 于 2019-9-6 07:49 编辑
slore 发表于 2019-9-5 22:49
Src_Software是install.wim的注册表, 主要用regcopy 补充到 PE的注册表, 修改Src是没用的.




       感谢详尽的回复,大概明白了。我个人觉得,还是在main.bat里面搞定随着PE启动的程序或者注册表更好,因为这样做使得补丁容易弄懂,可读性好,模块化,一个补丁要实现的功能都在里面就行了。

        有个问题想问下,如果我从lua启动器+explorer.exe作为shell,是不是就可以完全不用pecmd.exe和pecmd.ini这一套东西?
回复

使用道具 举报

1349#
 楼主| 发表于 2019-9-6 07:59:08 | 只看该作者
本帖最后由 slore 于 2019-9-6 08:15 编辑
liuzhaoyzz 发表于 2019-9-6 07:30
感谢详尽的回复,大概明白了。我个人觉得,还是在main.bat里面搞定随着PE启动的程序或者注册表 ...


你在main.bat中
echo xxx.exe /assocext > %X_Startup%\xxxxAssoc.bat

本来就可以,也有很多例子,比如MTP的main.bat。
如果代码多,assoc.bat先写好,main.bat中,
copy assoc.bat %X_Startup%\也行啊。


如果选择LUA启动器,pecmd.exe和pecmd.ini没用。
但是pecmd.exe会拷贝进去备用运行些pecmd的命令。
LUA只是实现了创建快捷方式,其他基本都是lua自带的功能,文件操作,注册表和隐藏执行程序。
就100来行代码,比起PECMD功能弱了些,启动管理来说,startnet.cmd批处理都行,这样也够了。
目前就觉得没有hook关机消息,开始菜单不能关机重启,
其他pecmd的高级用法没有。

自己判断目前LUA够用就选LUA,慢慢完善了pecmd就可以彻底不用了,毕竟不开源,也没维护。代码语法不标准,学会了也只能用于pecmd,不像lua自己可以扩展,还是标准语言,学了还能干别的事。


有pecmd底子就继续用pecmd吧。其实pecmd.ini大部分就是启动程序,创建下快捷方式。。。不深入写代码的,用啥都无所谓。
回复

使用道具 举报

1350#
发表于 2019-9-6 08:27:02 | 只看该作者
        wimbuilder2很灵活啊,解决的方法很多。我就觉得main.bat直接搞注册表或者写批处理容易懂。wimbuilder2有很多变量,不知道这些变量就没法使用。比如%X_Desktop%、%X_Startup%等等。

有pecmd底子就继续用吧。其实pecmd.ini大部分就是启动程序,创建下快捷方式。。。不深入写代码的,用啥都无所谓。

了解了。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-6-30 15:25

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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