无忧启动论坛

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

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

    [复制链接]
7081#
发表于 2022-10-13 11:54:23 | 只看该作者
请教大神:用WinXShell,如何设置桌面及任务栏图标?如怎样将2.bat(对应图标为sys.ico)固定在任务栏和桌面?
回复

使用道具 举报

7082#
发表于 2022-10-14 06:46:02 | 只看该作者
试用一下这款WINPE啊,看看性能如何
回复

使用道具 举报

7083#
发表于 2022-10-14 13:14:19 | 只看该作者
请教大神:
       我的winpeshl.ini:
             [LaunchApps]
           %SYSTEMROOT%\System32\WinXShell.exe, -winpe
           %SYSTEMROOT%\System32\Sh.exe

为何Sh.exe无法启动?错在哪里了?
谢谢!

点评

第二行要等第一行的东西退出后才执行 把第一行改成%SystemRoot%\System32\cmd.exe, /c start "" %SystemRoot%\System32\WinXShell.exe -winpe试试  详情 回复 发表于 2022-10-14 14:02
回复

使用道具 举报

7084#
发表于 2022-10-14 14:02:24 | 只看该作者
青青草 发表于 2022-10-14 13:14
请教大神:
       我的winpeshl.ini:
             [LaunchApps]

第二行要等第一行的东西退出后才执行
把第一行改成%SystemRoot%\System32\cmd.exe, /c start "" %SystemRoot%\System32\WinXShell.exe -winpe试试

点评

通过WinXShell.lua解决了。 谢谢你!  详情 回复 发表于 2022-10-18 13:11
谢谢! 还是不行。  详情 回复 发表于 2022-10-14 21:48
回复

使用道具 举报

7085#
发表于 2022-10-14 21:48:29 | 只看该作者
hua_wuxin 发表于 2022-10-14 14:02
第二行要等第一行的东西退出后才执行
把第一行改成%SystemRoot%\System32\cmd.exe, /c start "" %System ...

谢谢!
还是不行。
回复

使用道具 举报

7086#
发表于 2022-10-15 00:23:44 来自手机 | 只看该作者
记录一下
回复

使用道具 举报

7087#
发表于 2022-10-15 07:20:29 | 只看该作者
slore 发表于 2022-10-11 20:59
小更新版本,可以选boot.wim的第2卷看看。

谢谢,还有一个问题,就是Administrator登录时,登录界面不显示“正在准备 Windows"就进桌面了,而其他PE在登录Administrator时在登录界面转好几圈才进桌面,请问这是怎么做到的?

点评

启动不初始化网络,账号登录后再做。  详情 回复 发表于 2022-10-15 09:21
回复

使用道具 举报

7088#
 楼主| 发表于 2022-10-15 09:21:33 | 只看该作者
Weicome 发表于 2022-10-15 07:20
谢谢,还有一个问题,就是Administrator登录时,登录界面不显示“正在准备 Windows"就进桌面了,而其他PE ...

启动不初始化网络,账号登录后再做。

点评

那这是修改了系统的哪个地方做到的,我想去掉我另一个PE的“正在准备 Windows "  详情 回复 发表于 2022-10-15 14:57
回复

使用道具 举报

7089#
发表于 2022-10-15 14:57:42 | 只看该作者
slore 发表于 2022-10-15 09:21
启动不初始化网络,账号登录后再做。

那这是修改了系统的哪个地方做到的,我想去掉我另一个PE的“正在准备 Windows "

点评

启动初始化,无人值守文件和pecmd.ini  发表于 2022-10-16 11:10
回复

使用道具 举报

7090#
发表于 2022-10-16 15:48:19 | 只看该作者
请教大神:
      使用WinXShell,在进入桌面后欲让系统自动刷新桌面,应在WinXShell.lua中如何书写?
先谢谢了!

点评

Desktop:Refresh() 记得是刷新。不过一般情况是自动有变化就刷新了啊。  详情 回复 发表于 2022-10-16 16:51
回复

使用道具 举报

7091#
 楼主| 发表于 2022-10-16 16:51:42 | 只看该作者
青青草 发表于 2022-10-16 15:48
请教大神:
      使用WinXShell,在进入桌面后欲让系统自动刷新桌面,应在WinXShell.lua中如何书写?
先 ...

Desktop:Refresh()

记得是刷新。不过一般情况是自动有变化就刷新了啊。

点评

我在WinXShell.lua中加入语句 Desktop:Refresh() 如下 function onfirstrun() exec('/hide', 'cmd.exe /c net start Lanmanserver') exec('/hide', 'cmd.exe /c net share X=X: /grant:everyone,full /y')  详情 回复 发表于 2022-10-18 10:28
“可能新版本吧。老版本不支持这个命令?app:call('Desktop::Refresh')看看,不行的话,得我确认下旧版本的代码了。” 试了,还是不行。  详情 回复 发表于 2022-10-17 09:55
这个语句放在WinXShell.lua中的最后位置,不能进入PE桌面。 应该放在哪个位置呢?  详情 回复 发表于 2022-10-16 20:42
回复

使用道具 举报

7092#
发表于 2022-10-16 20:42:08 | 只看该作者
slore 发表于 2022-10-16 16:51
Desktop:Refresh()

记得是刷新。不过一般情况是自动有变化就刷新了啊。

这个语句放在WinXShell.lua中的最后位置,不能进入PE桌面。
应该放在哪个位置呢?

点评

你要放到启动脚本吧。  发表于 2022-10-16 21:08
可能新版本吧。老版本不支持这个命令?app:call('Desktop::Refresh')看看,不行的话,得我确认下旧版本的代码了。  发表于 2022-10-16 21:07
回复

使用道具 举报

7093#
发表于 2022-10-17 06:32:34 来自手机 | 只看该作者
谢谢分享
回复

使用道具 举报

7094#
发表于 2022-10-17 08:04:38 | 只看该作者
报错的文件为fbwf.sys,不知道是不是可以找大佬反馈。
在使用VMWARE时出现的蓝屏。默认在X盘新建的虚拟机内存为2G,可以正常启动虚拟机。如果手动在创建时或者创建后调整其内存大小,宿主机PE系统就会在启动虚拟机的几秒内蓝屏。我笔记本的内存为32G,台式机的内存为16G,均出现该问题。应该不是物理内存不足的原因。PE是【2022.09.29】WIN10PE 64位全功能版-基于官方20H2镜像
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=425765


点评

确认下实体机启动如何。 另外,X盘大小选择4GB,不要再大, 看看使用系统自带的是否正常。  详情 回复 发表于 2022-10-17 08:45
回复

使用道具 举报

7095#
发表于 2022-10-17 08:16:31 | 只看该作者

谢谢分享!!
回复

使用道具 举报

7096#
 楼主| 发表于 2022-10-17 08:45:38 | 只看该作者
tzxinqing 发表于 2022-10-17 08:04
报错的文件为fbwf.sys,不知道是不是可以找大佬反馈。
在使用VMWARE时出现的蓝屏。默认在X盘新建的虚拟机 ...

确认下实体机启动如何。
另外,X盘大小选择4GB,不要再大,
看看使用系统自带的是否正常。

点评

可能是我没表述清楚。就是实体机用U盘PE启动,在PE里安装VMWARE,然后新建一个虚拟机。默认2G内存,可以正常启动ISO的镜像文件,调整了内存大小PE就会在启动虚拟机时蓝屏。  详情 回复 发表于 2022-10-17 09:37
回复

使用道具 举报

7097#
发表于 2022-10-17 09:37:23 | 只看该作者
slore 发表于 2022-10-17 08:45
确认下实体机启动如何。
另外,X盘大小选择4GB,不要再大,
看看使用系统自带的是否正常。

可能是我没表述清楚。就是实体机用U盘PE启动,在PE里安装VMWARE,然后新建一个虚拟机。默认2G内存,可以正常启动ISO的镜像文件,调整了内存大小PE就会在启动虚拟机时蓝屏。
回复

使用道具 举报

7098#
发表于 2022-10-17 09:55:51 | 只看该作者
slore 发表于 2022-10-16 16:51
Desktop:Refresh()

记得是刷新。不过一般情况是自动有变化就刷新了啊。

“可能新版本吧。老版本不支持这个命令?app:call('Desktop::Refresh')看看,不行的话,得我确认下旧版本的代码了。”

试了,还是不行。
回复

使用道具 举报

7099#
发表于 2022-10-17 09:57:44 | 只看该作者
“可能新版本吧。老版本不支持这个命令?app:call('Desktop::Refresh')看看,不行的话,得我确认下旧版本的代码了。”
     
     试了,还是不行。
回复

使用道具 举报

7100#
发表于 2022-10-18 10:28:11 | 只看该作者
slore 发表于 2022-10-16 16:51
Desktop:Refresh()

记得是刷新。不过一般情况是自动有变化就刷新了啊。

我在WinXShell.lua中加入语句 Desktop:Refresh() 如下
function onfirstrun()
  exec('/hide', 'cmd.exe /c net start Lanmanserver')
  exec('/hide', 'cmd.exe /c net share X=X: /grant:everyone,full /y')
  exec('/hide', 'cmd.exe /c net start wlansvc')
  exec('/hide', 'wpeutil InitializeNetWork')
  exec('X:\\Program Files\\SH.EXE')
  exec('X:\\Program Files\\Yong\\W64\\YONG.EXE')
  exec('/hide', [[Reg delete HKLM\SOFTWARE\Classes\Directory\background\shell\Powershell /f]])
  reg_write([[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{26EE0668-A00A-44D7-9371-BEB064C98683}\ShellFolder]], 'Attributes', 0xA0900004, winapi.REG_DWORD)
  exec('/hide','X:\\Program Files\\WinXShell.exe -ui -console -jcfg wxsUI\\UI_info\\ip.jcfg -ipinfo -top')
Desktop:Refresh()
  -- VERSTR = reg_read([[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion]], 'CurrentVersion')
  if is_wes then
    if win_ver == '6.2' or win_ver == '6.3' then -- only Windows 8, 8.1
      app:call('SetTimer', ICP_TIMER_ID, 200) -- use timer to make main shell running
    end
  end
end
结果:进入PE桌面后没有自动刷新桌面。
错在哪了?
回复

使用道具 举报

7101#
发表于 2022-10-18 13:11:24 | 只看该作者
hua_wuxin 发表于 2022-10-14 14:02
第二行要等第一行的东西退出后才执行
把第一行改成%SystemRoot%\System32\cmd.exe, /c start "" %System ...

通过WinXShell.lua解决了。
谢谢你!
回复

使用道具 举报

7102#
发表于 2022-10-24 17:12:27 | 只看该作者
本帖最后由 f5122298 于 2022-10-24 17:25 编辑

slore大,wimbuilder2功能很强了,但一些功能还是要用winxshell和pecmd(例如admin账户支持)。我们公司电脑上不能运行用winxshell、pecmd等任何第三方软件。我尝试删掉了这两个软件目录,少量修改了一下startnet.cmd, 能正常启动到桌面, 且大部分功能可用,但admin账户支持、桌面背景(只能是黑色)我搞不掂了。
有没有可能,在wimbuilder2中,你开发新增一个选项——不使用任何第三方工具(包括winxshell和pecmd)?对于像我这种在要求严格的公司上班的,这确实是刚需呀!盼能得到关照

—— 注:为满足公司要求,我现在的做法是:用wimbuilder2制作bootwim,然后从0开始,依照boot.wim的文件夹和文件,完全从原生install.wim中拷贝,缺失install.wim中的文件不去管它,然后把注册表的hive拷贝过来,就是完全纯净不含任何第三方exe、dll等文件的了。至于其中少数几个dll文件的修改,我仿照binmay命令,用vbs写代码修改了。

点评

Admin切换回System账户的话,必须要WinXShell.exe。 如果直接进入Admin不需要再切换回来System的话,不需要WinXShell.exe。 直接把pecmdAdmin.ini的处理和LogonAdmin.bat改造为启动批处理和vbs就行了。  详情 回复 发表于 2022-10-24 22:56
或者教教我,在当前wimbuilder2成品的基础上,做一个最终补丁,直接绕过winxshell和pecmd调用,例如改造一下startnet(由于考虑太多,startnet的调用逻辑越来越复杂了,之前版本的要简单很多。),实现直接登录到adm  详情 回复 发表于 2022-10-24 17:19
回复

使用道具 举报

7103#
发表于 2022-10-24 17:19:58 | 只看该作者
f5122298 发表于 2022-10-24 17:12
slore大,wimbuilder2功能很强了,但一些功能还是要用winxshell和pecmd(例如admin账户支持)。我们公司电 ...

或者教教我,在当前wimbuilder2成品的基础上,做一个最终补丁,直接绕过winxshell和pecmd调用,例如改造一下startnet(由于考虑太多,startnet的调用逻辑越来越复杂了,之前版本的要简单很多。),实现直接登录到admin,以及恢复背景(现在桌面背景是漆黑的)。先谢了!
回复

使用道具 举报

7104#
发表于 2022-10-24 18:21:34 | 只看该作者
感谢分享
回复

使用道具 举报

7105#
 楼主| 发表于 2022-10-24 22:56:42 | 只看该作者
f5122298 发表于 2022-10-24 17:12
slore大,wimbuilder2功能很强了,但一些功能还是要用winxshell和pecmd(例如admin账户支持)。我们公司电 ...

Admin切换回System账户的话,必须要WinXShell.exe。

如果直接进入Admin不需要再切换回来System的话,不需要WinXShell.exe。

直接把pecmdAdmin.ini的处理和LogonAdmin.bat改造为启动批处理和vbs就行了。


壁纸黑屏的话,应该是其他问题。字体是宋体麽?还是雅黑,如果是宋体的话,
还需要一个三方程序LsaNTRight.exe加载用户主目录。

点评

多谢!我试试直接进admin的改造,完全避开winxshell.exe。 不熟练,效率就低。——若你能把wimbuilder2增加一个完全不用第三方工具的选项就好了呀。 关于壁纸,找到原因了:把x:%users\default\ntuser.dat删掉,或  详情 回复 发表于 2022-10-25 01:52
回复

使用道具 举报

7106#
发表于 2022-10-25 01:52:37 | 只看该作者
slore 发表于 2022-10-24 22:56
Admin切换回System账户的话,必须要WinXShell.exe。

如果直接进入Admin不需要再切换回来System的话, ...

多谢!我试试直接进admin的改造,完全避开winxshell.exe。
不熟练,效率就低。——若你能把wimbuilder2增加一个完全不用第三方工具的选项就好了呀。
关于壁纸,找到原因了:把x:\users\default\ntuser.dat删掉,或用DEFAULT替代就可以了(之前拷贝的是install.wim的,而用wimbuilder2生成的这个文件,无法拷贝,奇怪。)。由于公司政策原因,我不用wimbuilder2生成的文件,而是以wimbuilder2生成的文件清单和目录为基础,完全依葫芦画瓢,从原生install.wim提取文件,如果install.wim中没有这个文件,就空着。
回复

使用道具 举报

7107#
发表于 2022-10-25 19:12:45 | 只看该作者
学习学习了
回复

使用道具 举报

7108#
发表于 2022-11-1 14:22:21 来自手机 | 只看该作者
slore大,怎么设置可以让winxshell接管此电脑右键属性,是改注册表还是需要运行命令

点评

winxshell -daemon启动会自动接管。 也可以直接修改我电脑右键菜单的注册表,调用winxshell ms-settings:about 命令。  详情 回复 发表于 2022-11-1 22:26
回复

使用道具 举报

7109#
发表于 2022-11-1 21:52:42 | 只看该作者
请教S大,网络连接图标的显示wifi信号以及网络图标上的“Internet和网络设置”是系统原生的还是用WinXShell实现的?
我尝试使用系统原生网络图标,但不能显示wifi信号列表,右键网络图标的“连接共享与网络设置”无反应。
请楼主指点一下,谢谢!

点评

原生的本来就在PE下打不开。 不过 连接共享与网络设置 是系统原生的控制面板项目。 原生的右键菜单默认调用新版本的uwp设置,所以没反应。  详情 回复 发表于 2022-11-1 22:15
回复

使用道具 举报

7110#
 楼主| 发表于 2022-11-1 22:15:26 | 只看该作者
aiya01 发表于 2022-11-1 21:52
请教S大,网络连接图标的显示wifi信号以及网络图标上的“Internet和网络设置”是系统原生的还是用WinXShell ...

原生的本来就在PE下打不开。
不过 连接共享与网络设置 是系统原生的控制面板项目。
原生的右键菜单默认调用新版本的uwp设置,所以没反应。

点评

感谢解惑!  详情 回复 发表于 2022-11-1 22:21
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-10 18:11

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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