无忧启动论坛

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

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

    [复制链接]
811#
 楼主| 发表于 2021-3-7 14:03:08 | 只看该作者
sairen139 发表于 2021-3-7 10:13
请教slore大神,如果c盘程序文件夹下面有个bootice.exe,怎么在进桌pe面之前就用语句设置好给这个bootice.e ...

WinXShell.lua
中使用link命令直接用lua创建快捷方式,
function onfirstrun()
  ...

  link([[X:\Users\Default\Desktop\BOOTICE.lnk]], [[C:\bootice.exe]])
end

或者, 改成用exec('pecmd.exe load X:\\mytools.ini') 加载pecmd的外置配置。

点评

好的、感谢slore大神  详情 回复 发表于 2021-3-7 14:11
回复

使用道具 举报

812#
发表于 2021-3-7 14:11:17 | 只看该作者
slore 发表于 2021-3-7 14:03
WinXShell.lua
中使用link命令直接用lua创建快捷方式,
function onfirstrun()

好的、感谢slore大神
回复

使用道具 举报

813#
发表于 2021-3-8 20:32:51 | 只看该作者
slore 发表于 2020-4-5 01:56
## WinXShell RC4.3 (2020.04.04)

很好
回复

使用道具 举报

814#
发表于 2021-3-10 20:37:08 | 只看该作者
slore 发表于 2020-4-5 01:56
## WinXShell RC4.3 (2020.04.04)

下载地址还有哪里的
回复

使用道具 举报

815#
发表于 2021-4-18 09:28:30 | 只看该作者
比Windows自带的资源管理器要好用多了!
回复

使用道具 举报

816#
发表于 2021-4-18 09:30:27 | 只看该作者
这比Windows的资源管理器要好用多了
回复

使用道具 举报

817#
发表于 2021-5-5 10:32:11 | 只看该作者
请问怎么固定开始菜单和任务栏呀

点评

StartMenu和Pinned目录创建快捷方式就行。 WinXShell.exe -code Taskbar:Pin('regedit.exe')  发表于 2021-5-7 14:17
回复

使用道具 举报

818#
发表于 2021-5-7 11:30:29 | 只看该作者
是完美兼容吗,值得试试
回复

使用道具 举报

819#
发表于 2021-5-7 19:35:27 | 只看该作者
function onclick_startmenu_reboot()
  -- restart computer directly
  System:Reboot()
  -- wxsUI('UI_Shutdown', 'full.jcfg')
  return 0
  -- return 1 -- for call system dialog
end

function onclick_startmenu_shutdown()
  -- shutdown computer directly
  System::Shutdown()
  -- wxsUI('UI_Shutdown', 'full.jcfg')
  return 0
  -- return 1 -- for call system dialog
end


S大,开始菜单点击关机、重启我想直接生效,所以WinXShell.lua我修改为上面这样,但在此电脑右键点属性却打不开系统属性页面了,点了没反应。改回下面那样,就没问题。按理说UI_Shutdown应该和UI_SystemInfo不相干呀
  -- System:Reboot()
  wxsUI('UI_Shutdown', 'full.jcfg')


  -- System::Shutdown()
  wxsUI('UI_Shutdown', 'full.jcfg')



点评

System::Shutdown() 你多写了一个冒号,导致WinXShell.lua脚本解析错误。  详情 回复 发表于 2021-5-7 19:44
回复

使用道具 举报

820#
 楼主| 发表于 2021-5-7 19:44:55 | 只看该作者
lps4290 发表于 2021-5-7 19:35
function onclick_startmenu_reboot()
  -- restart computer directly
  System:Reboot()

System::Shutdown() 你多写了一个冒号,导致WinXShell.lua脚本解析错误,所以右键属性的系统接管失效了。

点评

大意了,这么明显我都没注意到改了之后舒畅了。 不过翻看了老大WimBuilder2中的WinXShell.lua,发现这个坑是祖传的,老大有空时改改吧?  详情 回复 发表于 2021-5-11 19:47
回复

使用道具 举报

821#
发表于 2021-5-11 18:04:03 | 只看该作者
求助    我想把UI_Shutdown中的关机和重启放到右键,但换了新版的WinXShell后,效果没了,弹不出菜单来,旧版本的20.17是可以的右键菜单注册表导入:
[HKEY_CLASSES_ROOT\Directory\background\shell\Restexplorer]
@="关机或重启"
"Icon"="%windir%\\System32\\SHELL32.dll,27"
"Position"="BOTTOM"

[HKEY_CLASSES_ROOT\Directory\background\shell\Restexplorer\Command]
@="winxshell -ui -jcfg UI_Shutdown\\main.jcfg"

main.jcfg如下:
{
  "name":"UI_Shutdown",
  "nobaricon":true,
  "OnClick":
  {
  "shutdownbtn":"
PUSH 'shutdown';
PUSH 1;
CALL ::Command();
CALL ::Close();
  ",
  "restartbtn":"
PUSH 'reboot';
PUSH 1;
CALL ::Command();
CALL ::Close();
  "
  },
  "JS_CMD":
  {
    "reboot": {
       "command": "pecmd.exe",
       "parameters": "shut r"
    },
    "shutdown": {
      "command": "pecmd.exe",
      "parameters": "Shut"
    }
  }
}



点评

新版本做出了UI_Shutdown做成了压缩包。 方法1:解压UI_Shutdown.zip 方法2:直接调用zip包,会自动解压到临时目录(PE下使用,正常系统建议解压) winxshell -ui -jcfg UI_Shutdown.zip\\main.jcfg 方法3:使  详情 回复 发表于 2021-5-11 21:45
回复

使用道具 举报

822#
发表于 2021-5-11 19:47:12 | 只看该作者
slore 发表于 2021-5-7 19:44
System::Shutdown() 你多写了一个冒号,导致WinXShell.lua脚本解析错误,所以右键属性的系统接管失效了。 ...

大意了,这么明显我都没注意到改了之后舒畅了。

不过翻看了老大WimBuilder2中的WinXShell.lua,发现这个坑是祖传的,老大有空时改改吧?

点评

好的,更新WinXShell的4.5的时候顺手改掉,那句注释掉了没注意。  发表于 2021-5-11 21:47
回复

使用道具 举报

823#
 楼主| 发表于 2021-5-11 21:45:14 | 只看该作者
ellx98 发表于 2021-5-11 18:04
求助    我想把UI_Shutdown中的关机和重启放到右键,但换了新版的WinXShell后,效果没了,弹不出菜单来,旧 ...

新版本做出了UI_Shutdown做成了压缩包。

方法1:解压UI_Shutdown.zip

方法2:直接调用zip包,会自动解压到临时目录(PE下使用,正常系统建议解压)
winxshell -ui -jcfg UI_Shutdown.zip\\main.jcfg

方法3:使用wxsUI函数调用,自己判断调用UI文件夹还是UI的ZIP包
winxshell -code wxsUI('UI_Shutdown')

点评

不是很懂,按你的方法改了,文件放到windows下,但还是不起作用,弹不出关机的画面来,一点反应都没有; 我的是windows10 20H2 x64系统,Winxshell我就喜欢这个关机功能,感觉特殊方便,麻烦你帮忙再看下,新版本不  详情 回复 发表于 2021-5-12 09:27
回复

使用道具 举报

824#
发表于 2021-5-11 22:24:06 | 只看该作者
感谢slore大神
回复

使用道具 举报

825#
发表于 2021-5-12 09:27:01 | 只看该作者
slore 发表于 2021-5-11 21:45
新版本做出了UI_Shutdown做成了压缩包。

方法1:解压UI_Shutdown.zip

不是很懂,按你的方法改了,文件放到windows下,但还是不起作用,弹不出关机的画面来,一点反应都没有;
我的是windows10 20H2 x64系统,Winxshell我就喜欢这个关机功能,感觉特殊方便,麻烦你帮忙再看下,新版本不会搞。 附件是我想做的关机功能。

右键桌面增加关机或重启.rar

9.17 KB, 下载次数: 8, 下载积分: 无忧币 -2

点评

winxshell -code wxsUI('UI_Shutdown') 没成功? 新版本是下面的路径,少了wxsUI。 WinXShell\wxsUI\ UI_Shutdown.zip winxshell -ui -jcfg wxsUI%uI_Shutdown.zip\main.jcfg  详情 回复 发表于 2021-5-12 21:44
回复

使用道具 举报

826#
 楼主| 发表于 2021-5-12 21:44:07 | 只看该作者
ellx98 发表于 2021-5-12 09:27
不是很懂,按你的方法改了,文件放到windows下,但还是不起作用,弹不出关机的画面来,一点反应都没有;
...

winxshell -code wxsUI('UI_Shutdown') 没成功?

新版本是下面的路径,少了wxsUI。
WinXShell\wxsUI\
                UI_Shutdown.zip

winxshell -ui -jcfg wxsUI\UI_Shutdown.zip\main.jcfg

点评

谢谢,已经调试成功。  详情 回复 发表于 2021-5-13 14:41
回复

使用道具 举报

827#
发表于 2021-5-13 14:41:44 | 只看该作者
slore 发表于 2021-5-12 21:44
winxshell -code wxsUI('UI_Shutdown') 没成功?

新版本是下面的路径,少了wxsUI。

谢谢,已经调试成功。
回复

使用道具 举报

828#
发表于 2021-5-27 22:33:29 | 只看该作者
谢谢楼主的分享
回复

使用道具 举报

829#
发表于 2021-6-20 09:37:17 来自手机 | 只看该作者
win7PE还能用吗?

点评

WIN7以上系统都可以。  发表于 2021-6-20 11:05
回复

使用道具 举报

830#
发表于 2021-6-22 04:44:08 | 只看该作者
感谢
回复

使用道具 举报

831#
发表于 2021-6-22 09:40:24 | 只看该作者
这个不开发更新了吗?

点评

随WimBuilder2有更新,主要更新Lua脚本接口。 2021/06/06版本。外壳新增了任务栏预览显示。 改动不大。首页准备更新的时候,论坛出错编辑了更改历史没了,就懒的写了。 WimBuilder2的网盘有下载。 回头把更  详情 回复 发表于 2021-6-22 12:13
回复

使用道具 举报

832#
 楼主| 发表于 2021-6-22 12:13:11 | 只看该作者
永恒心锁 发表于 2021-6-22 09:40
这个不开发更新了吗?

随WimBuilder2有更新,主要更新Lua脚本接口。
2021/06/06版本。外壳新增了任务栏预览显示。
改动不大。首页准备更新的时候,论坛出错编辑了更改历史没了,就懒的写了。

WimBuilder2的网盘有下载。

回头把更新历史写好了。再发布更新下页面。
回复

使用道具 举报

833#
发表于 2021-6-30 19:56:05 | 只看该作者
本帖最后由 junyee 于 2021-6-30 20:18 编辑

楼主你好。

是否可以考虑出一个 外挂 lua53.dll 的版本?
方便我自己调用 c的 lib 。我写了个测试的dll, 并把 lua53.dll复制过来,倒是可以工作。

还有使用 -console  参数, 遇到错误时是否可以暂停窗口,而不是像现在这样一闪而过,很不利于调试。






点评

静态编译lua53.lib到你的c的lib,生成dll文件,放到 LuaLibs\ 你就可以直接 require 引用你的C库。 -console -code 你的代码 app:sleep(50000)  详情 回复 发表于 2021-6-30 21:15
回复

使用道具 举报

834#
 楼主| 发表于 2021-6-30 21:15:04 | 只看该作者
本帖最后由 slore 于 2021-6-30 21:16 编辑
junyee 发表于 2021-6-30 19:56
楼主你好。

是否可以考虑出一个 外挂 lua53.dll 的版本?

静态编译lua53.lib到你的c的lib,生成dll文件,放到

LuaLibs\

你就可以直接 require 引用你的C库。

-console -code "你的代码;app:sleep(50000)"就可以暂停,新版本考虑做一个输出log文件,用于调试和开发。

点评

当lua 脚本错误,不一定是语法错误。 如 a=require("a") 如果 a.dll 不存在或错误时,用 lua53.exe 执行是会报错的。 而用 winxshell -script 就是一闪而过,即使在 cmd.exe 中执行也是弹出另一个 console 一  详情 回复 发表于 2021-7-1 20:20
回复

使用道具 举报

835#
发表于 2021-7-1 20:20:29 | 只看该作者
slore 发表于 2021-6-30 21:15
静态编译lua53.lib到你的c的lib,生成dll文件,放到

LuaLibs\


当lua 脚本错误,不一定是语法错误。

如 a=require("a")
如果 a.dll 不存在或错误时,用 lua53.exe 执行是会报错的。
而用 winxshell -script 就是一闪而过,即使在 cmd.exe 中执行也是弹出另一个 console 一闪而过。

暂停脚本可以用 os.execute('pause') 。
---

静态编译这里我用 tinyc 编译器没成功。
tinyc 编译 lua源码成功了。

`tcc  test.c -Llua-5.3.0 -llua -shared -Ilua-5.3.0  -o test.dll`
生成的dll 有100多kb,但是执行报错。

昨天用
`tcc test.c lua53.dll  -shared -Ilua-5.3.5_Win32_dll16_lib\include -o test.dll`
生成的 test.dll 则要 lua53.dll在同目录才可以工作,不过要增加 200+KB  的体积。

~~~~
感觉是生成的 liblua.a 有问题.
有时间再用 gcc 或 vs 试试,都不是很熟。


点评

静态编译可以不要 lua53.dll,不过体积增大。 那就直接 lua53.dll 放到 WinXShell 目录就可以,官方的dll就直接能用。  详情 回复 发表于 2021-7-1 21:55
回复

使用道具 举报

836#
 楼主| 发表于 2021-7-1 21:55:18 | 只看该作者
本帖最后由 slore 于 2021-7-1 21:57 编辑
junyee 发表于 2021-7-1 20:20
当lua 脚本错误,不一定是语法错误。

如 a=require("a")

静态编译可以不要 lua53.dll,不过体积增大。

那就直接 lua53.dll 放到 WinXShell 目录就可以,官方的dll就直接能用。

WinXShell是Windows 程序不是 Console程序,所以脚本错误不好捕捉。直接的 print标准输出的信息没有的。
我自己是 luac53.exe测试lua代码,好了才放到 WinXShell中。

自己写lua脚本,C库扩展的人很少,这款没特别处理。

WinXShell也就是连接了lua53.lib,直接 loadfile,  dofile执行lua代码。没做什么干预。

点评

今天又测试了下, 用 gcc 编译的静态 test.dll ,在 winxshell 同样报错。 [attachimg]482686[/attachimg] 而用 gcc 编译的 lua53.exe 和 `https://sourceforge.net/projects/luabinaries/files/5.3/Tools%20Ex  详情 回复 发表于 2021-7-2 10:14
回复

使用道具 举报

837#
发表于 2021-7-2 04:48:40 来自手机 | 只看该作者
本帖最后由 小絔小小小 于 2021-7-2 05:03 编辑

请教一下楼主有方法获取当前dpi缩放为多少吗
自动缩放总是偏大 我就想写个调节缩放的脚本
可是没找到如何获取当前缩放为多少…
设置dpi也是用winxshell 想着问问楼主有没有接口

点评

Screen:GetDPI() 可以获取当然DPI。SetDPI可以改。 LUA_Test.bat中有可用对象,函数方法说明。  详情 回复 发表于 2021-7-2 11:20
回复

使用道具 举报

838#
发表于 2021-7-2 10:14:30 | 只看该作者
slore 发表于 2021-7-1 21:55
静态编译可以不要 lua53.dll,不过体积增大。

那就直接 lua53.dll 放到 WinXShell 目录就可以,官方的 ...

今天又测试了下,
用 gcc 编译的静态 test.dll ,在 winxshell 同样报错。


而用 gcc 编译的 lua53.exe 和
`https://sourceforge.net/projects ... ols%20Executables/`下载的lua53.exe
执行 require('test') 则不会报错。

还有编译的静态 test.dll 太大了,竟然达到345KB (可能跟gcc也有关)。。
比动态编译的 test.dll + lua53.dll 还要大,这么折腾似乎没有什么意义了。
~~~

如果winxshell 不出外置 lua53.dll 版本 的话,就不再折腾啦。



点评

我之前直接lua53.dll放到外面,第三方的dll可以使用。 不用编译不连接lua53.lib的WinXShell.exe外置版。 你给个简单的test.dll的演示代码吧。 我用VS编译没有问题。简单的函数用TCC也编译过。 没用过gcc这  详情 回复 发表于 2021-7-2 11:18
回复

使用道具 举报

839#
 楼主| 发表于 2021-7-2 11:18:42 | 只看该作者
junyee 发表于 2021-7-2 10:14
今天又测试了下,
用 gcc 编译的静态 test.dll ,在 winxshell 同样报错。

我之前直接lua53.dll放到外面,第三方的dll可以使用。
不用编译不连接lua53.lib的WinXShell.exe外置版。


你给个简单的test.dll的演示代码吧。

我用VS编译没有问题。简单的函数用TCC也编译过。
没用过gcc这种交叉编译环境。

点评

lua53.dll 丢在 winxshell 目录上,一直是可以工作的。 我是想不用 lua53.dll 节省这几百KB的体积。 gcc静态编译的,可以在 lua53.exe 中 工作,winxshell中不可以。 且体积较大(345KB)。 gcc/tcc动态编  详情 回复 发表于 2021-7-2 11:30
回复

使用道具 举报

840#
 楼主| 发表于 2021-7-2 11:20:45 | 只看该作者
小絔小小小 发表于 2021-7-2 04:48
请教一下楼主有方法获取当前dpi缩放为多少吗
自动缩放总是偏大 我就想写个调节缩放的脚本
可是没找到如何 ...

Screen:GetDPI() 可以获取当然DPI。SetDPI可以改。

LUA_Test.bat中有可用对象,函数方法说明。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-18 09:00

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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