xintiandi 发表于 2018-2-25 18:23:42

slore 发表于 2018-2-25 12:11
谢谢反馈。

设置菜单倒是能改,不过整个开始菜单我是打算废弃掉的,直接用classicshell或者重新写个类 ...

当然是放到快速启动栏处方便些,期待新版的更新,最好能同时支持win7和win8,不在区分版本。

xintiandi 发表于 2018-2-26 12:14:25



win8的系统,我试了还是要卡,复制文件也卡。

wcr1000 发表于 2018-3-14 09:32:45

感觉好高大上的样子,膜拜

V587 发表于 2018-3-24 16:52:26

楼主您好!
软件运行一段时间后,会弹出一个错误对话框
duilib:加载资源文件失败
只要点了确认,winxshell就会崩溃退出

WrongREqia0 发表于 2018-3-24 19:21:28

如果放在没有桌面体验,核心安装的WinServer2016上面,可以启动吗?

WrongREqia0 发表于 2018-3-24 21:34:32

是的,现在可以 启动。还是有几个问题。
第一桌面是黑的,第二文件资源管理器打不开,第三右下角没有出现网络图标

slore 发表于 2018-3-26 20:01:58

本帖最后由 slore 于 2018-3-27 08:52 编辑

WrongREqia0 发表于 2018-3-24 21:34
是的,现在可以 启动。还是有几个问题。
第一桌面是黑的,第二文件资源管理器打不开,第三右下角没有出现 ...


好像论坛数据恢复了?重新给你在回复一下。

第一桌面是黑的
server core本是没有桌面的,所以节省资源,提高性能很多图形相关的更新不进行了。
桌面壁纸,是当桌面发生变化,系统请求重绘来刷新的,结果server core不发送这个请求了,
所以桌面一直是黑色的。

第二文件资源管理器打不开
server core没有explorer.exe自然没有文件管理器,可以使用第3方的软件进行管理,
比如:explorer++.exe,TotalCommander等。
如果使用,编辑WinXShell.jcfg,将"#3rd_file_manager"前的#号去掉。


也可以参照下面的帖子,补充新版本的打开对话框功能(2个dll+几项注册表)。
从windows server 2016带桌面体验的版本的WIM中提取相关dll文件。
WinXShell默认将利用此对话框改造成文件管理器。

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=378646&extra=

2楼:第一个内核PATCH---文件打开对话框(NewFileOpenDlg)
本来需要4个文件,对于PE,2016好像有2个已经有了,应该是还要补充下面的2个。
Windows\System32\ExplorerFrame.dll
Windows\System32\StructuredQuery.dll


效果如下:


除了没有状态栏,导航,左边树目录等功能很完整,使用上基本无差。

第三右下角没有出现网络图标
网络图标功能,和PE一样,需要自己补充相关的dll文件和注册表信息。
毕竟core版本,没有桌面,自然托盘图标功能也是多余的,被精简掉了。

补充了以后,由于没有MetroUI的支持,只有托盘图标,点击不能打开
界面,所以意义不大。WinXShell自己实现了一个WIFI连接的界面,
同时包含托盘图标状态显示,因为对于PE,有些是不带网络功能的,
所以这个是单独启动的。

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

默认会弹出WIFI连接界面,如果启动时只需要状态托盘图标,加上-hidewindow参数即可。

WinXShell.exe -ui -jcfg UI_WIFI\main.jcfg -hidewindow

xintiandi 发表于 2018-3-26 20:40:04

看来用winxshell的朋友越来越多,楼主是不是该更新一下新版了,期待中。。

WrongREqia0 发表于 2018-3-26 20:58:20

slore 发表于 2018-3-26 20:01
好像论坛数据恢复了?重新给你在回复一下。




原生explorer需要添加哪些DLL和注册表呢?
还有就是程序菜单的英文,我记得desktop.ini对于快捷方式都有LocalizeResource指定的。不过应该可以用Classic Shell之类的代替。

xintiandi 发表于 2018-3-28 21:24:45

xintiandi 发表于 2018-3-26 20:40
看来用winxshell的朋友越来越多,楼主是不是该更新一下新版了,期待中。。

1月到现在快3个月了。一季度更新一次,一年也就4次,不是很频繁。当然期待RS4到底有多大的更新,最好是把之前所有没有实现的功能全搞定。

slore 发表于 2018-3-29 12:15:47

xintiandi 发表于 2018-3-28 21:24
1月到现在快3个月了。一季度更新一次,一年也就4次,不是很频繁。当然期待RS4到底有多大的更新,最好是把 ...

1月到现在快3个月了。


不是和微软比,专门几个月开发。。。
有自己的生活和工作,而且还有其他项目也在做。

WinXShell.exe目前做的开发内容:
UI界面导入lua脚本控制,可以通过脚本进行编写。
支持加载系统DLL的资源,中文/英文/西班牙/法语等界面语言识别。
比如,分辨率更新,已经可以倒计时15秒不更新就还原(脚本定义的,可随意修改操作效果)。

1.高仿的我电脑属性界面也最好了,给出了自己写扩展的例子,
可以获取系统信息,内存信息,当前状态,运行时间,自定义启动程序按钮等,
只要2个文本文件1KB而已,不像通常的PE,为了看个内存信息,加入很多文件。


2.声音的Modern界面,只提供了
获取/设置音量,静音状态的4个函数,通过不到100行的lua脚本就可以设置了。

3.控制面板,简单的CPL枚举,然后可以点击运行的简易面板。

4.笔记本使用时,电源状态图标

5.日历,时间设定界面

修复反馈的问题:
开始菜单,命令自定义(虽然我一直建议用ClassicShell,这个也是开源的,合并也不是难事,但是没有必要,我是打算用新的UI框架,重写开始菜单,当然ClassicShell十万行代码,这个功能不是那么容易短时间的事,有代替品,把时间投入到目前没有的地方)
WIN7,WIN8系统文件操作卡顿

也都修复了。

WinXShell到现在,其实用的人不多,下载个数也就100~200左右,
反馈问题的更少(4,5个人反馈的水平),没有反馈的话,
我自己用现在完全够用,所以更新很少。

昨天在RS4下试用了下,没有遇到不正常的现象,不需要额外对应。

现在在整理代码,准备做开源计划。(最初就是开源的,没人协助开发。。。)

slore 发表于 2018-3-31 01:15:22

xintiandi 发表于 2018-2-25 11:17
今天有时间再次测试了一下控制面板的调用,win7和win8。
1、命令行运行control.exe
2、点击设置中的控制 ...

控制面板我处理了下,PE来说没有用。你这个WSE7可以试试。

开始菜单,参照 关机,重启写个 control命令可以调用control.exe了。

      "shutdown": {
         "command": "Wpeutil.exe",
         "parameters": "Shutdown"
      },
      "control": {
         "command": "control.exe"
      }

2012zhd 发表于 2018-3-31 19:35:20

这次赶在了l大更新pe前,辛苦了。

xintiandi 发表于 2018-3-31 20:40:15

本帖最后由 xintiandi 于 2018-3-31 20:55 编辑

slore 发表于 2018-3-31 01:15
控制面板我处理了下,PE来说没有用。你这个WSE7可以试试。

开始菜单,参照 关机,重启写个 control命 ...

感谢楼主的无私奉献,一个小众软件坚持更新了几年,实属不易,就算开源了,也不一定能完善到现在的程度,涉及和系统交互的操作我个人觉得很难的,虽然我也会改点代码,用c#写点小程序,但是windows api相关的东西我也看不懂。
刚刚测试了一下,wes7和wes8都测试了一遍,基本完美了。之前的问题都修复了,准备正式集成到系统中替代explorer使用。
1、但我自制wes7和wes8只要是不带explorer自启动的系统,winxshell中,资源管理器的最小化按钮就没用,点击快速启动栏的,最小化所有窗口是可以的。我尝试先手动运行explorer后,在运行winxshell也无效,仅是资源管理器的最小化按钮无效,,其他软件的最小化正常,包括任务管理器的最小化也正常。不知道是哪个地方的问题,可能还是和初始化桌面有关。

2、只要是有桌面,带explorer启动的系统,结束explorer后,在启动winxshell,资源管理器的最小化按钮就没有问题。
3、wes8因内置的组建多,快速启动栏处会多出show desktop和 windows switcher 2个按钮,点击没有看到效果,打开的窗口也无法隐藏显示桌面,可能和没有加载explorer有关。
4、下面的这个问题不知道算不算bug,wes8输入法图标可以拖动,就是前面会多出一个透明框,应该是拖动的鼠标跑焦了,wes7正常。

V587 发表于 2018-4-1 19:29:58

真的很敬佩楼主的技术和毅力,以及无私奉献的精神!恭喜楼主晋升为爸爸,也祝令郎健康快乐地成长!
上一次我报告的那个bug已经完美解决,但是有产生了一个新的问题:运行一段时间后,会弹出下面这个对话窗,这一次点击确定,或者关闭对话窗,并不会像上一次那样,导致winxshell崩溃。
另:我是直接在win10系统使用(而非pe),我自己用C语言编了个小程序,命名为explorer.exe,来调用楼主的winxshell

#include <stdlib.h>
void main(void)
{
system("cd C:\\Progra~1\\WinXShell_x64\\ & start WinXShell.exe -winpe & start WinXShell.exe -ui -jcfg UI_WIFI\\main.jcfg -hidewindow & start WinXShell.exe -ui -jcfg UI_Volume\\main.jcfg -hidewindow");
}

我想说的就是,楼主能让winxshell一次启动多个jcfg吗?这样调用起来方便一些
再次感谢!

slore 发表于 2018-4-1 20:08:14

xintiandi 发表于 2018-3-31 20:40
感谢楼主的无私奉献,一个小众软件坚持更新了几年,实属不易,就算开源了,也不一定能完善到现在的程度 ...

谢谢详细的问题报告。

问题1,这个我已经解释过了,资源管理器是利用,
打开对话框 进行加工而来的。

记事本->文件->打开

这个对话框是模态的,不在任务栏显示,也不能最小最大化,我强制修改窗口风格式样,
好像没有开启DWM.exe的状况下可以用,开了就用不了。在PE下,我是抓取鼠标消息,
当在最小化按钮的位置时,我来最小化,就像 显示桌面 可以一样,其实点击任务栏上的
任务窗口,和右键,也可以最小化。
(鼠标按下就最小化,通常的其实是鼠标弹起才最小化,略微差异不过可以最小化还是可以接受的)

explorer.exe运行一次后就可以,看来还是有什么东西没有做,
不过这个很难搞清楚。
我想看看是否有其他的消息可以参考,你如果可以运行
Microsoft Spy++ ,监控下窗口消息,看看有什么消息是只有这个最小化按钮点击时触发就好了。

曾今你给我过
wes7.iso
wes7sp1&pos中文语言包lp.cab
我想尝试在WES7环境下试试,但是我加载WES7.ISO后无法安装,
提示缺乏对应的语言包,但是这个语言包我不知道怎么放进ISO中。

3.快速启动栏多的图标是QuickLaunch文件夹下的,他们不是通常的lnk快捷方式,
是通过shell调用的,所以无效。
你从QuickLaunch文件夹中删除的话,就可以了,但是你和原生explorer混在的话,
删除并不好,我倒是可以添加一个选项,不显示非lnk的图标,或者不显示指定名称的图标。

4.这个怎么说呢,按理说应该是这个输入法状态栏跟着拖动,但是好像坐标计算错误了,
WES7正常,WES8不正常这个现象来看,不是我能控制的了。即使我想修正也有点无从下手了。

slore 发表于 2018-4-1 20:20:05

本帖最后由 slore 于 2018-4-2 08:22 编辑

V587 发表于 2018-4-1 19:29
真的很敬佩楼主的技术和毅力,以及无私奉献的精神!恭喜楼主晋升为爸爸,也祝令郎健康快乐地成长!
上一次 ...

主要也是WIFI和声音状态栏,其他的都是其他菜单访问的。
对于PE,有的2个都不带,有的只有声音没网络,有的有网络。

托盘相关的我是打算合并成一个进程进行管理,代码里面也写了,
有个ui管理进程,但是它没有按我想象的工作,我就屏蔽掉了先(当时只有WIFI 1个窗口也没什么必要)。

另外,这2个模块我单独出去,因为有些人还是喜欢用原版的explorer,
所以他们在explorer的shell环境下也可以工作,所以我是希望按需使用,
要带个参数不是难事,但是我得考虑下怎么设计它。


截图中的这个错误是在无法定位,代码异常系确实处理的不好,
也没有日志,这个不太好查。我编译一个带DEBUG信息的版本,
当出现这个错误的时候,你从任务管理器,选中
创建转存文件(我可以试试分析这个DMP文件,在什么方面出错)



en_US config file for gazi06

gazi06 发表于 2018-4-1 22:56:39

Where do we need to dispose of the files I could not run

xintiandi 发表于 2018-4-2 11:28:41

本帖最后由 xintiandi 于 2018-4-3 20:40 编辑

slore 发表于 2018-4-1 20:08
谢谢详细的问题报告。

问题1,这个我已经解释过了,资源管理器是利用,


今天用spy++测试了一下,都关闭了dwm服务的,如果是在无法最小化的系统中,手动运行一次explorer后,不管explorer是否退出,在运行winxshell仍然是不行的。下面提供了2种系统,点击最小化前后的截图,不知道能否帮助定位到问题

下图是不能最小化系统的2个截图,前面是打开了资源管理器窗口未点击最小化的状态,后面的是点击最小化之后未成功的状态

下图是可以最下化系统的截图,前面是打开了资源管理器窗口未点击最小化的状态,后面的是点击最小化之后成功的状态

V587 发表于 2018-4-2 19:48:34

楼主您好!
上一次我报告的那个bug,还没有再次出现过。我又碰到了新的bug
点击确定或关闭窗口,不会导致crash

我还有一个不情之请,楼主可以发布一个,在win7系统下,右键单击桌面,弹出对“桌面”文件夹右键的普通文件夹菜单,的特别版吗?
谢谢!

xintiandi 发表于 2018-4-2 23:19:43

本帖最后由 xintiandi 于 2018-4-3 20:41 编辑

F3没有反应,没有完全理解你的意思,我感觉就是监听操作吧,我用消息记录的方式获取了一些信息给你参考,应该能发现问题所在。先看下面的动画,直接点击最小化按钮,无法最小化,但是我用句柄操作工具可以。


下面附上对比图,左边为winxshell的最小化操作,右图为直接句柄工具的最小化操作

slore 发表于 2018-4-3 00:46:26

反馈小问题修正版本v3.0.1



* 快速启动栏忽略掉不能用的 系统显示桌面 和 桌面切换
* #236楼的WIN7桌面菜单选项添加, basic,view,origin,none三个选项(如果和你想的不一样,请给我个你想要的菜单截图)
http://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&ptid=371541&pid=3492960&fromuid=166812

* 修复-hidewindow多次运行时,隐藏窗口被显示问题
* lua脚本控制UI改善
* main.lua的名称可以在jcfg中配置
* btn = sui.find('某按钮') 后,可通过btn,isnil == nil判断是否存在来操作 (老版本程序会挂掉)
* 可多个界面共用资源,但是呈现完全不同功能的UI (附件运行LUA_TEST.bat)
** 不用点击OK,立马改变分辨率的direct.lua
** 壁纸选择,随机壁纸的wallpaper.lua
* 提供sui:jcfg('name')方法,可以从lua脚本中读取jcfg的设定信息
* 提供"SUI_PARAM"环境变量,使得lua脚本可以根据参数,控制UI实现不同的效果

start WinXShell.exe -ui -jcfg UI_Resolution\main.jcfg
start WinXShell.exe -ui -jcfg UI_Resolution\main.jcfg -direct
start WinXShell.exe -ui -jcfg UI_Resolution\main.jcfg -lua direct.lua
start WinXShell.exe -ui -jcfg UI_Resolution\wallpaper.jcfg


特别需求的小版本,请按需要下载。

slore 发表于 2018-4-3 00:48:26

本帖最后由 slore 于 2018-4-3 19:57 编辑

xintiandi 发表于 2018-4-2 23:19
F3没有反应,没有完全理解你的意思,我感觉就是监听操作吧,我用消息记录的方式获取了一些信息给你参考,应 ...

是的,就是要看这个消息。
不过需要特定鼠标点击最小化时的消息,你演示的时候,窗口没选中你点击过去触发了
WM_ACTIVATE,但是是激活就出发,不能唯一确定,下面的WM_NOFITY,1148我可以看看。

你选中窗口后,再点击下 最小化按钮确认下消息。

2018-04-03 强制处理最小化按钮版本(WES)



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

注意逗号

slore 发表于 2018-4-3 00:49:05

V587 发表于 2018-4-2 19:48
楼主您好!
上一次我报告的那个bug,还没有再次出现过。我又碰到了新的bug
点击确定或关闭窗口,不会导致 ...

shellclasses?你是操作了开始菜单的东西吧。这个建议用其他开始菜单工具代替啊。

xintiandi 发表于 2018-4-3 13:04:21

本帖最后由 xintiandi 于 2018-4-3 20:40 编辑

slore 发表于 2018-4-3 00:48
是的,就是要看这个消息。
不过需要特定鼠标点击最小化时的消息,你演示的时候,窗口没选中你点击过去触 ...

下图左边为winxshell,选定窗口,在点击最小化失败的记录,右图为选定窗口后,句柄工具操作最小化的记录。
具体文件见附件

xintiandi 发表于 2018-4-3 18:26:23

那晚上试试吧。system32下面有 dwm.exe,默认这个系统都是带的,我只是在服务里面禁用了,dwm对应的服务。默认时启动的。

xintiandi 发表于 2018-4-3 20:22:49

本帖最后由 xintiandi 于 2018-4-3 20:41 编辑

可以最小化了。wes7和wes8 x86都测试通过。x64,暂时没有装对应的版本,没有测试。之前的那些插入的图,我删除了。有点影响网页刷新。

xintiandi 发表于 2018-4-3 21:41:17

本帖最后由 xintiandi 于 2018-4-3 23:12 编辑

wes7下测试完美,wes8输入法拖动跑焦的问题和输入法有关,我换一个输入法就没有出现了。

刚才测试又发现一个问题,我开机直接运行winxshell,点击开始菜单设置中的控制面板,居然没反应。点击几次都没有用,我打开cmd 直接输入control.exe也没有反应。启动后在winxshell不退出的情况下第一次运行explorer.exe,刚好一分钟才会加载完界面,并且加载出来后,之前操作的点击控制面板的界面也一起出来了。只要explorer运行一次后,在到winxshell中,点击控制面板或者运行control都没有问题了,也很快。只有重启后,问题又出来了。那就说明wes8中运行explorer后,可能附带有初始化的操作。否则,winxshell中点击控制面板无法运行。必须等待explorer执行或者其他程序行始化后,才响应。
我用第三方文件管理器,直接调用打开控制面板也要等待1分半的时间。看来wes8和wes7在加载桌面初始化可能不一样。

如果启动后,不运行winxshell,而是直接运行control就不会有问题。如果先运行winxshell,在运行control,最后运行explorer会导致窗口要延时1分钟弹出。并且容易卡死。
如果单独运行winxshell后,只点击控制面板或运行control要等1分半钟,反复测试几次都是这样,基本上刚好1分半界面才会出来,仿佛又是之前的出现过的问题。
如果运行winxshell后,只运行explorer,需要等待30秒弹出窗口,卡主加载30秒,刚好1分钟,explorer的界面加载完。
看来是运行winxshell后,对运行explorer有影响,间接导致对control有影响,要等1分半,才能出来控制面板的界面,其他功能没有发现受影响,毕竟运行控制面板必须要explorer做支持才能运行,wes8中的explorer可能和winxshell有一定的冲突。

gazi06 发表于 2018-4-4 15:30:31

slore 发表于 2018-4-1 20:20
主要也是WIFI和声音状态栏,其他的都是其他菜单访问的。
对于PE,有的2个都不带,有的只有声音没网络 ...

I do not know how to integrate WinXShell into the system.

xintiandi 发表于 2018-4-5 13:31:51

启动进程信息有办法抓取吗,没有找到合适的工具,你可以先按照之前说的方式试试,或者加入调试信息,看是否能定位的准确的信息。
页: 1 2 3 4 5 6 7 8 9 [10] 11 12 13 14 15 16 17 18 19
查看完整版本: [更新(2022/11/11) ModernUI回归] explorer再见,WinXShell你好!