Topic: WinXShell - a portable shell and zero dependencies for boot.wim,winre.wim  (Read 65223 times)

Re: WinXShell - a portable shell and zero dependencies for boot.wim,winre.wim
« Reply #280 on: January 29, 2019, 03:32:39 PM »
  • Location: Israel
  • Date Registered: Dec 2017
  • Posts: 444
Thanks for the Config info,

Is there more information on commands to use on loading WinXshell? -ui -jcfg wxsUI\UI_Launcher.zip -theme dark <---- like this?

Re: WinXShell - a portable shell and zero dependencies for boot.wim,winre.wim
« Reply #281 on: February 01, 2019, 12:15:34 PM »

slore

  • WimBuilder
  • Sr. Chef
  • ****
  • Date Registered: Jun 2016
  • Posts: 664
WinXShell.exe [-console] [-winpe|-wes] [-keep_userprofile] [-install] [-desktop] [-noautostart|-autostart]
Code: [Select]
    -console             Startup a console window to display the DEBUG information
    -winpe               close current shell forcly if it exists;
                         and update the USERPROFILE environment variable to X:\Users\Default if %USERPROFILE%\Desktop isn't exist.
                         * skip this if there is -keep_userprofile option
    -wes                 Windows Embedded Standard
    -keep_userprofile    don't update the USERPROFILE environment variable with -winpe
    -install        update winlogon registy to make WinXShell as default shell, and close current shell forcly if it exists.
    -desktop        no matter if the shell application exists, always show the WinXShell's shell (for develop)
    -autostart      startup the application(s) in RunOnce, Run, ...
    -noautostart    don't startup the application(s) in RunOnce, Run, ...


WinXShell.exe [-daemon]
Code: [Select]
    -daemon  fix ShowDeskop button for explorer.exe [disabled]
             auto hide taskbar when full screen window actived for explorer.exe [disabled]
             fix ThisPC's property menu(systeminfo) in pure x64
             fix OpenContainingFolder menu of shortcuts without ieframe.dll(15MB)
             handle clockarea click/doubleclick event for explorer.exe
             handle ms-settings protocol,like Resolution settings, dateandtime, ...

WinXShell -ui -jcfg <ui_folder>\<jconf>.jcfg [-entry <UI>.xml] [-lua <action>.lua] [-theme <theme>] [-hidewindow] [-singleton] [<customparamter>]
WinXShell -ui -jcfg <ui_packed_zip>[\<jconf>.jcfg] [-entry <UI>.xml]  [-lua <action>.lua] [-theme <theme>] [-hidewindow] [-singleton] [<customparamter>]
Code: [Select]
    -entry <UI>.xml        UI definition(defualt: main.xml)
    -lua <action>.lua      UI event action script(default: main.lua)
    -theme <theme>         UI theme(default:default)
    -hidewindow            hide main UI window on startup
    -singleton             make UI window run as singleton mode (only one UI window exists)
    <customparamter>       pass any other paramters, make different UI/Action in lua script

« Last Edit: February 01, 2019, 12:31:36 PM by slore »

Re: WinXShell - a portable shell and zero dependencies for boot.wim,winre.wim
« Reply #282 on: February 02, 2019, 04:03:10 PM »
  • Location: Israel
  • Date Registered: Dec 2017
  • Posts: 444
Thanks for the info.

Re: WinXShell - a portable shell and zero dependencies for boot.wim,winre.wim
« Reply #283 on: February 16, 2019, 12:31:23 PM »

slore

  • WimBuilder
  • Sr. Chef
  • ****
  • Date Registered: Jun 2016
  • Posts: 664
Slowly, but still in developing.

Here is RC4.0 Preivew:
* WinXShell_x64.zip (2471.2 kB - downloaded 97 times.)
* WinXShell_x86.zip (2311.03 kB - downloaded 81 times.)

ila_rendered

  • new UI --- UI_Settings(Taskbar & Colors)
  • Easy-to-Use interface

UI_Settings
Taskbar:
    auto hide, use small buttons, combine buttons
Colors:
    apps light theme, dark theme
(no need kill the explorer.exe)

Easy-to-Use interface
1. add -regist option
registy WinXShell.exe's path to AppPaths, call WinXShell.exe without its full path.
Code: [Select]
WinXShell.exe -regist -noaction

2. handle "taskbar settings" menu to the new UI_Settings.

3. add -luacode <lua_code> option
now can run lua code(s) directly, change settings with commandline.
Quote
WinXShell.exe -luacode app:run('notepad.exe')
WinXShell.exe -luacode wxsUI('UI_Settings')
WinXShell.exe -luacode Taskbar:AutoHide(1)
WinXShell.exe -luacode Taskbar:UseSmallButtons(1)
WinXShell.exe -luacode Taskbar:CombineButtons('never')
rem wxsUI() function is in WinXShell.lua
rem Taskbar:XXXXX() function(s) is in lua_helper\shell_helper.lua
rem you can add any custom lua function by yourself

4. add -script <lua_file> option
Write lua script code(s) in xxx.lua, and run.



Usage:
rem put this in PECMD.ini or Startup.cmd when you use explorer.exe shell
Code: [Select]
WinXShell.exe -regist -daemon
You can remove "-regist" option, if you don't call "WinXShell.exe" directly, use WinXShell.exe with it's full path.

then try to right click taskbar, and select the "Taskbar Settings" menu, you will see the UI_Settings,
then try to single click the clockarea, you will see the UI_Calendar,
then try to select the "Date and Time", or double click the clockarea, will startup the timedate.cpl.

you have full control of them in WinXShell.lua.



about RC4.0 release:
1. I want to merge UI_Resolution, wallpaper settings, language settings  to UI_Settings,
and dark theme for all.


2. export change resolution, rotation settings lua function(s).

3.UI_Shutdown.zip\full.jcfg will use wallpaper image then bk.jpg in UI_Shutdown.zip, make good to add -bk X:\xx\xxx.jpg.

4. use system wallpaper image then wallpaper.jpg in default.

5. change UI_Volume to Window 10 simple style

6. change UI_Calendar to Window 10 simple style and add lunar calendar for Chinese version.

:turtle:
« Last Edit: March 03, 2019, 12:15:38 PM by slore, Reason: update todo list »

Re: WinXShell - a portable shell and zero dependencies for boot.wim,winre.wim
« Reply #284 on: February 16, 2019, 01:11:31 PM »

slore

  • WimBuilder
  • Sr. Chef
  • ****
  • Date Registered: Jun 2016
  • Posts: 664
if someone know the string resources in which dll file, please tell me, I will try load string resource from the system.

Re: WinXShell - a portable shell and zero dependencies for boot.wim,winre.wim
« Reply #285 on: February 17, 2019, 01:19:20 PM »

teik

  • Chef
  • ***
  • Date Registered: Nov 2016
  • Posts: 250
Hi slore
I just tried the new function and the idea is fantastic. I liked it a lot. I leave here the translation into Spanish. There is a small problem in the image, in the On and Off button that is longer in Spanish.

On= Activar
Off= Desactivar

I hope to continue seeing the evolution. The idea is magnificent.  :great:

Regards

Re: WinXShell - a portable shell and zero dependencies for boot.wim,winre.wim
« Reply #286 on: February 24, 2019, 04:48:39 PM »

slore

  • WimBuilder
  • Sr. Chef
  • ****
  • Date Registered: Jun 2016
  • Posts: 664
Hi, teik

Thanks for your Spanish translation and the feedback of on/off size problem.

now I merge the "Display" settings and add dark theme.

ila_rendered
ila_rendered

Code: [Select]
WinXShell.exe -ui -jcfg wxsUI\UI_Settings.zip
WinXShell.exe -ui -jcfg wxsUI\UI_Settings.zip -theme dark
WinXShell.exe -ui -jcfg wxsUI\UI_Settings.zip -display
WinXShell.exe -ui -jcfg wxsUI\UI_Settings.zip -colors

Re: WinXShell - a portable shell and zero dependencies for boot.wim,winre.wim
« Reply #287 on: February 25, 2019, 03:10:00 PM »

teik

  • Chef
  • ***
  • Date Registered: Nov 2016
  • Posts: 250
It works perfectly. Thank you very much for adding it so fast. This is an excellent job.  :thumbsup:


- One suggestion: you could add a shortcut on the side: that allows access to the control panel. English: Control Panel. Spanish: Panel de Control

Code:

Code: [Select]
#$pWinDir#$p\system32\compmgmt.msc

That way I would have a quick access with that entry.
Finally: when you change the subject to dark or clear it does it very well, but it does not change to dark in the application itself, which still maintains the color with which it started. It could be good that it was changing at the same time to see the change.

thanks for everything. They are only suggestions, your work is wonderful.

slore

  • WimBuilder
  • Sr. Chef
  • ****
  • Date Registered: Jun 2016
  • Posts: 664
Hi, teik

:wink: compmgmt.msc is bit weird in "Settings", but I added on the panel as you request,
as a sample for people, they can add other custom button on it.

the UI_Settings will be use system theme now.

Still have something unfinished, but now the new version(RC4.0) released.

slore

  • WimBuilder
  • Sr. Chef
  • ****
  • Date Registered: Jun 2016
  • Posts: 664
2019-3-3 RC4.0 released:
* WinXShell_rc4.0.7z (2194.12 kB - downloaded 1102 times.)

changes:
Direction 1: update UIs to be uniform style(Windows 10 style for now), and support more options for them.
Direction 2: export SHELL control to be lua functions, do some change by commandline.
Direction 3: handle more Windows explorer metro UI entries.

[NEW]add -regist option to add WinXShell.exe to AppPaths, can call WinXShell.exe without full path.
Just regist:WinXShell.exe -regist -noaction
Explorer Shell:WinXShell.exe -regist -daemon
WinXShell Shell:WinXShell.exe -regist -winpe

[NEW]export shell settings to lua functions to change taskbar,wallpaper,volume settings.
like:
Code: [Select]
Desktop:SetWallpaper('x:\\wp.jpg'),Taskbar:CombineIcons('always'),System:ChangeTheme('dark'),
Taskbar:UseSmallIcon(1),Volume:Mute(1),Volume:SetLevel(50),...

[NEW]add -luacode <lua_code>, -script <lua_file> options to run lua codes directly.
Quote
WinXShell.exe -luacode app:run('notepad')
WinXShell.exe -luacode Volume:Mute(1)
WinXShell.exe -luacode Screen:Set('rotation',1)
WinXShell.exe -luacode Screen:Set('resolution',1024,768)
WinXShell.exe -luacode Taskbar:AutoHide(1)
WinXShell.exe -luacode Taskbar:UseSmallButtons(1)
WinXShell.exe -luacode Taskbar:CombineButtons('never')
WinXShell.exe -luacode wxsUI('UI_WIFI')
-- you can add custom function in lua_helper or WinXShell.lua

[NEW]UI_Settings --- taskbar settings UI with taskbar,colors,resolution settings, and quick access items(control panel, computer management).   (Thanks to @teik for Spanish translation and suggestion)

startup with "WinXShell -daemon" on boot, will auto handle "ms-settings:taskbar" protocol, so right click taskbar and the "Settings" menu will call UI_Settings,
"ms-settings:display" will call "wxsUI\UI_Settings\main.jcfg -display" to show the Resolution settings, will "-colors" option will stay on Colors settings.

(YOU can call any program you like for the ms-settings:xxxxx, see WinXShell.lua)

[improved]Resolution settings support "-fixscreen" option, to fix the desktop and taskbar abnormal display issue.

[improved]UI_xxxx now has default and dark theme to adapter windows 10 new dark mode.
[improved]UI_Shutdown.zip\full.jcfg now can load system wallpaper
[improved]UI_Shutdown.zip\full.jcfg now support image file option
[improved]UI_Shutdown.zip\full.jcfg now support blur option

Quote
WinXShell.exe -ui -jcfg UI_Shutdown.zip\full.jcfg            (use system wallpaper as background)
WinXShell.exe -ui -jcfg UI_Shutdown.zip\full.jcfg -blur 5 (blur effect, level is 5)
WinXShell.exe -ui -jcfg UI_Shutdown.zip\full.jcfg -bk X:\files\abc.jpg       (full path for system image file)
WinXShell.exe -ui -jcfg UI_Shutdown.zip\full.jcfg -bk bk.jpg            (bk.jpg is in UI_Shutdown.zip)
WinXShell.exe -ui -jcfg UI_Shutdown.zip\full.jcfg -blur 5 -bk bk.jpg  (blur effect, -bk needs be the latest option, put blur before it)

ila_rendered
ila_rendered


There are more settings will be exported, but can't be done in 4.0, I will make them done before 5.0  :tongue:
something like WIFI:Connect(ssid,username,password), Desktop:IconSize('middle'), Taskbar:Pin() ...
Add new UI (UI_Logon), new option (Brightness, DPI) ...
« Last Edit: March 02, 2019, 05:39:32 PM by slore »

teik

  • Chef
  • ***
  • Date Registered: Nov 2016
  • Posts: 250
Thank you very much for including the previous comment. Your work is much better every week. I loved this new very functional version. Visually it is magnificent. I love how the sound has been.

I currently use this command to boot:

Code: [Select]
WinXShell -daemon
How could I add by default at the start that the sound and wifi icon will be activated?


- I love the next improvements. Especially the screen brightness and DPI that currently can not be modified in Win10XPE. If you need that, you can send me the new text entries. So I can translate them and you can have them ready for when you take out the new version.

slore

  • WimBuilder
  • Sr. Chef
  • ****
  • Date Registered: Jun 2016
  • Posts: 664
Hi, teik

Quote
How could I add by default at the start that the sound and wifi icon will be activated?

Not every PE support sound and WIFI, so I don't make them startup on boot.

with -daemon, you can add next lua codes in WinXShell.lua:

Quote
function ondaemon()
  regist_shortcut_ocf()
  regist_system_property()
  regist_ms_settings_url()
  wxsUI('UI_Volume','main.jcfg','-hidewindow')
  wxsUI('UI_WIFI','main.jcfg','-hidewindow')
end

Quote
the screen brightness and DPI, you can send me the new text entries.

Thanks for your contribution, I will try to load system lang string resources firstly, if I can't find them and I will do request for your help.
For now, still have programming technical problems ... (bob.omb requested for a long time.)
« Last Edit: March 03, 2019, 02:50:40 AM by slore »

teik

  • Chef
  • ***
  • Date Registered: Nov 2016
  • Posts: 250
Hi slore,

For me now it works perfectly.

I include here the code that I use to hide the default sound icon. In case someone needs it or wants to include it in their project

Code: [Select]
//Hide Icon Sound
RegWrite,HKLM,0x4,Tmp_Default\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer,HideSCAVolume,1

So only the WinXShell appears. It's very elegant.
« Last Edit: March 04, 2019, 04:21:01 PM by teik »

LiteOS

  • Jr. Chef
  • **
  • Date Registered: Dec 2017
  • Posts: 19
Would u add option to add the display settings to control panel
thx

slore

  • WimBuilder
  • Sr. Chef
  • ****
  • Date Registered: Jun 2016
  • Posts: 664
do u mean?

Code: [Select]
Windows Registry Editor Version 5.00

;create new GUID => {5C0D9B0F-120B-4C53-850A-6E5522B8F714}
;regist control panel item
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace\{5C0D9B0F-120B-4C53-850A-6E5522B8F714}]
@="Display Settings"

[HKEY_CLASSES_ROOT\CLSID\{5C0D9B0F-120B-4C53-850A-6E5522B8F714}]
@="Display Settings"
;"LocalizedString"=%SystemRoot%\System32\display.dll,-390
"LocalizedString"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,\
  6f,00,6f,00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,\
  00,5c,00,64,00,69,00,73,00,70,00,6c,00,61,00,79,00,2e,00,64,00,6c,00,6c,00,\
  2c,00,2d,00,33,00,39,00,30,00,00,00
"System.ApplicationName"="Microsoft.Display"
"System.ControlPanel.Category"="1"
"System.ControlPanel.EnableInSafeMode"=dword:00000003
"System.Software.TasksFileUrl"="Internal"
"InfoTip"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,\
  6f,00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,\
  00,64,00,69,00,73,00,70,00,6c,00,61,00,79,00,2e,00,64,00,6c,00,6c,00,2c,00,\
  2d,00,33,00,39,00,30,00,00,00

[HKEY_CLASSES_ROOT\CLSID\{5C0D9B0F-120B-4C53-850A-6E5522B8F714}\DefaultIcon]
;@=%SystemRoot%\System32\display.dll,-1
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,69,00,\
  73,00,70,00,6c,00,61,00,79,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,31,00,00,\
  00

[HKEY_CLASSES_ROOT\CLSID\{5C0D9B0F-120B-4C53-850A-6E5522B8F714}\Shell]

[HKEY_CLASSES_ROOT\CLSID\{5C0D9B0F-120B-4C53-850A-6E5522B8F714}\Shell\Open]
"SettingsUri"="ms-settings:display"

[HKEY_CLASSES_ROOT\CLSID\{5C0D9B0F-120B-4C53-850A-6E5522B8F714}\Shell\Open\Command]
;@="WinXShell.exe -luacode app:run('ms-settings:display')"
"DelegateExecute"="{556FF0D6-A1EE-49E5-9FA4-90AE116AD744}"
« Last Edit: March 05, 2019, 10:36:58 AM by slore »

LiteOS

  • Jr. Chef
  • **
  • Date Registered: Dec 2017
  • Posts: 19
yes thx u

slore

  • WimBuilder
  • Sr. Chef
  • ****
  • Date Registered: Jun 2016
  • Posts: 664
Someone requested UI_Logon, make a Preview version for sharing.
yet, no the keyboard hook for disable system hotkeys(Windows, ALT+TAB, CTRL+ALT+DEL).
because for PE SYETEM,Administor switcher, just do easy selection.

ila_rendered

* UI_logon_Pre.7z (1976.74 kB - downloaded 69 times.)

PASSWORD is set to "abc".

MathSilva

  • Apprentice
  • *
  • Date Registered: Apr 2019
  • Posts: 5
Hello slore.
Which would be these 3 dlls for explorer?

slore

  • WimBuilder
  • Sr. Chef
  • ****
  • Date Registered: Jun 2016
  • Posts: 664
Hello slore.
Which would be these 3 dlls for explorer?

 :confused: Which dlls?

wxsStub.dll, wxsStub32.dll?
   Should be ieframe.dll.
   Handle shortcut file's OpenContainningFolder feature.

lua_helper\x64\winapi.dll?

call Windows API with lua script. explorer needn't this file.
ONLY WinXShell's UI Widget and WinXShell.lua(change registry) use it.



MathSilva

  • Apprentice
  • *
  • Date Registered: Apr 2019
  • Posts: 5
Hello slore.
Which would be these 3 dlls for explorer?

 :confused: Which dlls?

wxsStub.dll, wxsStub32.dll?
   Should be ieframe.dll.
   Handle shortcut file's OpenContainningFolder feature.

lua_helper\x64\winapi.dll?

call Windows API with lua script. explorer needn't this file.
ONLY WinXShell's UI Widget and WinXShell.lua(change registry) use it.

I mean those

 

Powered by EzPortal