无忧启动论坛

 找回密码
 注册
搜索

[更新(2022/11/11) ModernUI回归] explorer再见,WinXShell你好!

查看数: 408215 | 评论数: 1187 | 收藏 271
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2015-9-28 10:32

正文摘要:

本帖最后由 slore 于 2025-5-5 19:43 编辑 什么是WinXShell? 支持Windows 7,8,8.1,10,11, Windows Server 2008,2012,2016,2019,2022,2025以及以上版本的PE平台上的的代替explorer.exe的外壳程序。 (目前仍有exp ...

回复

slore 发表于 2019-2-3 13:33:23
lwb1 发表于 2019-2-3 11:06
还有一个问题
我把WinXshell设为PE默认的Shell
WinXshell启动时或打开文件夹时会出现一个命令提示符窗口
...


因为使用lua脚本扩展,做了一个 自动加载 lua_helper的lua脚本,结果呢,
它调用dir /b命令获取所有lua文件列表会启动一个cmd来运行的,所以会闪一下。
与文件夹关联没有关系。

打开:WinXShell\lua_helper\lua_helper.lua,删除红色的部分,添加蓝色的部分。

package.cpath = dllpath .. package.cpath

local f = io.popen('@dir /b '.. path .. '\\*.lua')
for line in f:lines() do
  if str.lower(line) ~= str.lower(__this__) then
    if suilib then
      suilib.print(line)
    else
      print(line)
    end
    require(line:sub(1, -5))
  end
end
f:close()


--[[
require('reg_helper')
require('os_helper')
require('str_helper')
require('io_helper')

--]]

点评

感谢楼主分享 PE中的必备软件之一 请教一下老大,最近发现有声网PE,播放声音为单声道,有无可能通过此软件的配置实现双声道?  详情 回复 发表于 2023-8-30 17:06
slore 发表于 2019-2-3 13:40:10
本帖最后由 slore 于 2019-2-3 13:43 编辑
lwb1 发表于 2019-2-3 10:07
打不开文件夹
要关联哪个资源管理器?
(我很清楚如何用注册表关联文件夹)


补充系统缺失的文件,可以使用内置的“打开文件对话框”模拟资源管理器,这种方式和explorer.exe几乎一模一样,而且PE系统的很多“浏览”按钮也可以使用了,方便打开文件。

如果是这种方式,你不用修改注册表,桌面打开文件夹,我的电脑,回收站,按Win+E打开资源管理器等都自动会由WinXShell.exe来打开

运行直接输入: system32这种方式打开文件夹,确实漏了关联注册表,你可以修改HKCR\Folder的关联到WinXShell.exe %1程序。

如果你使用第三方文件管理器,比如explorer++.exe,他们支持多窗口等其他特性,而且是绿色软件,单独一个exe就可以了,不依赖系统组件,比较便携。

这个情况,你修改好WinXShell.jcfg的配置桌面打开文件夹,我的电脑,回收站,按Win+E打开资源管理器等都自动会由WinXShell去调用第三方文件管理器,你不需要修改注册表

当然,同样运行直接输入:system32会提示无法找到关联程序,你可以修改注册表关联到WinXShell.exe %1,也可以直接关联到该第3方文件管理器:explorer++.exe %1。
slore 发表于 2019-2-2 18:27:43
lwb1 发表于 2019-2-2 16:24
explorer++.exe放那个目录?

如果你用第三方文件管理器,如 explorer++.exe。
你放到和WinXShell.exe相同目录,

WinXShell.jcfg你打开

  "::文件管理器":
  {
    "#::第3方文件管理器":"##{JVAR_MODULEPATH}\\explorer++.exe",
    "#padding-bottom":20
  },

"#::第3方文件管理器"开头的 #号删除掉就行了。

你也可以随意放到其他地方,这个路径修改就行了,比如:

"::第3方文件管理器":"X:\\Program Files\\explorer++\\explorer++.exe",

评分

参与人数 1无忧币 +1 收起 理由
Win7MEMZ-BX + 1 赞一个!

查看全部评分

slore 发表于 2018-8-20 21:54:55
Mouri_Naruto 发表于 2018-8-20 00:36
有关系的
因为使用含有GPL许可的所有项目和使用LGPL许可的静态编译的项目都有问询源代码在哪里的权利
...

推送到PExplorer这里了,
里面有2个分支PExlorer_v1.0,引入UI库前的最后一个Tag版本,
另外WinXShell改名后对文件管理器也有部分修正,所以把这部分修正单独抽取出来,
推送到WinXShell_shellpart的分支了,可以无依赖VS2015编译成功。

WinXShell的仓库预留着吧。

评分

参与人数 2无忧币 +6 收起 理由
Win7MEMZ-BX + 1 很给力!
Mouri_Naruto + 5 很给力!

查看全部评分

xintiandi 发表于 2018-1-29 22:21:52
本帖最后由 xintiandi 于 2018-1-29 22:33 编辑

的确是忘了加winpe参数,加上后,重启和关机都有效了。我想取消关机按钮,只保留重启,都是远程操作,一旦关机后,就不方便开机了,不知如何实现。

WinXShell.exe -ui -jcfg UI_Shutdown\main.jcfg

这个直接命令行可用,改到配置里面会出错。

点评

参考#254楼回复, "noshutdown":true, 就可以没关机菜单。 shutdwon_ui\\main.jcfg 斜杠需要写2个,在配置文件里。 main.xml文件,对关机按钮,配置个enabked=false,界面上关机也不能点了。参考其他的待  详情 回复 发表于 2018-1-30 09:38
friend8179 发表于 2015-9-29 14:32:09
楼主,还是静态编译,去除掉对VC库依赖吧
slore 发表于 前天 20:08
皇天sama 发表于 2025-8-28 17:32
非常感谢你特意去测试了下,我下午使用winxshell -winpe命令正常启动了桌面,开始菜单按钮和任务栏也有,但 ...

第三方资源管理器,winre.wim 什么都不补充,【360文件夹】的操作最接近Windows的文件资源管理器。
第一次打开稍微卡一下,其他操作,多便签,导航栏,地址栏啥都有。

要是补充一些文件和注册表片段,可以用文件打开对话框模拟文件资源管理器,
除了状态栏没信息,其他操作基本相同,也稳定。

因为我的目的是让用户可以根据自己当前的系统恢复环境快速在本地构建一个带有explorer的PE恢复环境


直接抄 WimBuilder2 给 winre.wim 补充的系统文件列表和注册表,
就可以生成带DWM, explorer的环境PE恢复环境。
皇天sama 发表于 前天 17:32
slore 发表于 2025-8-28 16:39
winre.wim 启动后,要结束 wallpaperhost.exe 进程,运行WinXShell.exe才可以出桌面。
或者winre.wim进 ...

非常感谢你特意去测试了下,我下午使用winxshell -winpe命令正常启动了桌面,开始菜单按钮和任务栏也有,但是资源管理器的那个窗口不太正常,没有导航栏和地址栏,这个问题可以用explorer++解决吗

点评

第三方资源管理器,winre.wim 什么都不补充,【360文件夹】的操作最接近Windows的文件资源管理器。 第一次打开稍微卡一下,其他操作,多便签,导航栏,地址栏啥都有。 要是补充一些文件和注册表片段,可以用文件  详情 回复 发表于 前天 20:08
armin233 发表于 前天 16:51
谢谢,支持一下!
slore 发表于 前天 16:39
皇天sama 发表于 2025-8-28 09:17
感谢您的回复!我目前使用的是win1022H2的版本,请问需要补充些什么东西,如果我后续使用其他版本的,比如win ...

winre.wim 启动后,要结束 wallpaperhost.exe 进程,运行WinXShell.exe才可以出桌面。
或者winre.wim进入后,cmd启动时,使用 WinXShell.exe -shell 参数启动,
会自动结束原有的wallpaperhost.exe进程。

但是 文件资源管理器 , 无法打开。 可以使用第三方的 explorer++.exe, 7z, TotalCommand, Q-Dir等第3方工具。要么需要从install.wim提取一些文件和注册表才可以。

我测试Win10 22h2的2月更新版本,正常。

zh-cn_windows_10_business_editions_version_22h2_updated_feb_2025_x64_dvd_016e01fc.iso
随蜂潜入夜 发表于 前天 09:19
感谢分享
皇天sama 发表于 前天 09:17
slore 发表于 2025-8-27 19:20
老版本的winre可以直接运行winxshell启动。新版本的系统内核,桌面运行需要补些东西。

你使用的是什么 ...

感谢您的回复!我目前使用的是win1022H2的版本,请问需要补充些什么东西,如果我后续使用其他版本的,比如win11是否也需要重新调整呢,因为我的目的是让用户可以根据自己当前的系统恢复环境快速在本地构建一个带有explorer的PE恢复环境

点评

winre.wim 启动后,要结束 wallpaperhost.exe 进程,运行WinXShell.exe才可以出桌面。 或者winre.wim进入后,cmd启动时,使用 WinXShell.exe -shell 参数启动, 会自动结束原有的wallpaperhost.exe进程。 但是  详情 回复 发表于 前天 16:39
slore 发表于 3 天前
皇天sama 发表于 2025-8-27 10:08
想请教您一个问题,我通过系统自带的winre恢复环境制作了一个简易的PE系统用来快速启动恢复用户环境,现在我 ...

老版本的winre可以直接运行winxshell启动。新版本的系统内核,桌面运行需要补些东西。

你使用的是什么版本的winre。
皇天sama 发表于 3 天前
想请教您一个问题,我通过系统自带的winre恢复环境制作了一个简易的PE系统用来快速启动恢复用户环境,现在我想把您制作的这个winXshell给加上以便用户可以在熟悉的Windows桌面环境下使用,我直接把您的winXShell移植到了PE环境里,发现无法启动,然后又复制了一些系统相关的DLL到PE,启动后只显示一个资源管理器的窗口,没有桌面,没有任务栏,请问我是否还应该继续复制一些相关依赖DLL还是说需要修改注册表一些选项

点评

老版本的winre可以直接运行winxshell启动。新版本的系统内核,桌面运行需要补些东西。 你使用的是什么版本的winre。  详情 回复 发表于 3 天前
ningyil 发表于 3 天前
太全了   必须下载  非常用心
newpe 发表于 4 天前
谢谢,非常好!
双响炮 发表于 6 天前
slore 发表于 2025-8-24 18:47
添加 Dialog:OpenFile(),  Dialog:BrowseFolder() 时,把Dialog函数的Show改出问题了。
确实现在没提示 ...

谢谢老大,调用api的用法之前我已在您文档示例中找到了,我只是以为我对这个方法没用对。但真的很欣慰这么快能得到您的解答。
slore 发表于 6 天前
双响炮 发表于 2025-8-24 18:37
刚开始学习winxshell,看了文档,有个

但是没有看到示例用法,尝试着使用

添加 Dialog:OpenFile(),  Dialog:BrowseFolder() 时,把Dialog函数的Show改出问题了。
确实现在没提示。

临时测试,可以用
  1. WinXShell_x64.exe -code Alert('123')
  2. WinXShell_x64.exe -code "winapi.show_message('title','msg')"
复制代码

点评

谢谢老大,调用api的用法之前我已在您文档示例中找到了,我只是以为我对这个方法没用对。但真的很欣慰这么快能得到您的解答。  详情 回复 发表于 6 天前
双响炮 发表于 6 天前
本帖最后由 双响炮 于 2025-8-24 18:40 编辑

刚开始学习winxshell,看了文档,有个
  1. 对话框 对象
  2. Dialog:Show (caption, msg[, btns[, icon]])
  3. 弹出提示 对话框
  4. Parameters:
  5. caption string 标题
  6. msg string 消息内容
  7. btns string
  8. 按钮式样

  9. ok - 确定 (默认), ok-cancel - 确定 与 取消,
  10. yes - 是, yes-no - 是 与 否, yes-no-cancel - 是, 否 与 取消
  11. abort-retry-ignore - 中止, 重试 与 忽略, retry-cancel - 重试 与 取消,
  12. (optional)
  13. icon string
  14. 图标式样

  15. information (默认), question, warning, error
  16. (optional)
  17. Returns:
  18. 返回按下的按钮名称:

  19. ok, yes, no, cancel, try, abort 或者 retry
复制代码

但是没有看到示例用法,尝试着使用
  1. winxshell_x64.exe -shell
  2. winxshell_x64.exe -code Dialog:Show("1","2")
复制代码

但是没任何反应,是不是我没有弄明白,请老大指教

点评

添加 Dialog:OpenFile(), Dialog:BrowseFolder() 时,把Dialog函数的Show改出问题了。 确实现在没提示。 临时测试,可以用  详情 回复 发表于 6 天前
yunfuxu 发表于 2025-8-6 20:26:15
谢谢分享
yunfuxu 发表于 2025-8-5 20:19:18
感谢分享
hktk2020 发表于 2025-8-5 11:03:20
感谢大佬,学习
matrix21 发表于 2025-8-4 21:52:05
还在更新吗?
只能代替PE中的explorer吗??
yunfuxu 发表于 2025-8-3 20:13:13
感谢分享
yunfuxu 发表于 2025-8-2 20:14:14
感谢分享
2011sweet306 发表于 2025-7-31 20:38:04
感谢楼主的分享!
yunfuxu 发表于 2025-7-31 20:10:35
谢谢分享
gk2290001 发表于 2025-7-27 06:29:56
slore 发表于 2025-7-26 20:07
UI_WIFI.zip中的zh-CN.xml复制一份,zh-TW.xml就可以。

是的,可以
複製後做簡轉繁,字體 微軟雅黑改為微軟正黑體
slore 发表于 2025-7-26 20:07:26
gk2290001 发表于 2025-7-26 18:59
WinXShell目前無繁體中文語言設定檔,暫時將英文改為繁體中文

UI_WIFI.zip中的zh-CN.xml复制一份,zh-TW.xml就可以。

点评

是的,可以 複製後做簡轉繁,字體 微軟雅黑改為微軟正黑體  详情 回复 发表于 2025-7-27 06:29
gk2290001 发表于 2025-7-26 18:59:37
WinXShell目前無繁體中文語言設定檔,暫時將英文改為繁體中文

sshot-2.jpg (455.95 KB, 下载次数: 8)

sshot-2.jpg

点评

UI_WIFI.zip中的zh-CN.xml复制一份,zh-TW.xml就可以。  详情 回复 发表于 2025-7-26 20:07
竹林滴水1978 发表于 2025-7-25 21:03:43
这是个好东西,感谢分享
yunfuxu 发表于 2025-7-25 20:24:35
谢谢分享
hfqs912 发表于 2025-7-13 10:11:18

楼主牛!
yunfuxu 发表于 2025-7-12 20:55:31
感谢分享
青青草 发表于 2025-7-5 19:09:59
本帖最后由 青青草 于 2025-7-5 19:16 编辑


lmgmmwws 发表于 2025-7-5 10:37:11
谢谢楼主分享

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

闽公网安备 35020302032614号

GMT+8, 2025-8-30 14:38

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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