Topic: How to enable the language Input Indicator for other input languages? SOLVED :)  (Read 732 times)

ericgl

  • Jr. Chef
  • **
  • Date Registered: Dec 2015
  • Posts: 71
Hi slore,

I'm using WinPE10 b17763 x64 en-US (built using Win10XPE).
I have already added to this WinPE10 a 2nd input language (he-IL) in the registry hives, and I can switch between en-US and he-IL using the ALT+SHIFT key combo.
The only problem is that I don't have the language Input Indicator in the taskbar.

I see that in WimBuilder2, you have scripts to add the Input Indicator (Projects\WIN10XPE\01-Components\IME). I looked at the scripts and added all required files and registry settings into my WinPE10. But the Input Indicator still does not get displayed.

1. Any idea what could be missing? Do I need to register something with PECMD during startup?
2. If I want to create a new WinPE10 with WimBuilder2, how to add he-IL as 2nd language? I only see Chinese and Korean next to IME_common.bat.
« Last Edit: June 09, 2020, 01:21:10 PM by Lancelot »

slore

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

Have you tried to build he-IL language PE with WimBuilder2?

For Chinese and Korean IME, it needs more inputmethod files, so there are Ime_ko-KR.bat, Ime_zh-CN.bat and Ime_zh-TW.bat.
Others maybe just need the IME_common.bat(I don't use other Languages, and no others feedback about that).

Try to build with WimBuilder2, enable IME(check all options) and use FULL SOFTWARE hive in [Customize]-[Configure]-[Build], see if it makes you the Input Indicator.

I will download a he-IL language ISO and try later.
« Last Edit: May 23, 2020, 11:49:41 AM by slore »

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
Hi ericgl,

As slore wrote, I believe It will work fine when you change your source from en-US to he-IL

+
Using en-US source:
he-IL already defined on my side, You wrote you added he-IL keyboard, who knows maybe you miss something
If your hostos works with he-IL en-US keyboard, I expect Azin-WimBuilder default will add he-IL keyboard and with IME showing he-IL and en-US
let us know results (on Azin topic), I believe this will help slore create similar language patches in future.

@slore
this starts here
Lancelot reply 20 http://theoven.org/index.php?topic=1544.msg37457#msg37457
see pictures,

I have a related question:
on picture 1,eg.
 @Winlangdb.dll,-1121
It should be "English United States"

After adding Winlangdb.dll It shows correct.

I guess default IME Patch did not add Winlangdb.dll (not tested with 2020.05.05, tested with 2020.05.05 7aad2850, quick checking now with existing ... )

(ps: I always use en-US source, and add TR keyboard later ;))

:turtle:

Edit
tested with 2020.05.05 7aad2850
« Last Edit: May 23, 2020, 12:42:27 PM by Lancelot »

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
+
with other words:

I believe:

Wimbuilder-Customize\Components\IME patch

with only enabled "IME indicator" Winlangdb.dll should be copied

ps: I know it is only a database of cosmetics but it is what it is  :wink:
 better not change bit40 to 1 for missing Winlangdb.dll to only make PE look nice  :cool:

:turtle:

ericgl

  • Jr. Chef
  • **
  • Date Registered: Dec 2015
  • Posts: 71
slore,

I don't think you need Win10 he-IL source ISO.

I always use Win10 en-US source. I just add he-IL for keyboard input language.

For reference, here are files I've added to my current WinPE10 b17763 en-US:
-----------
x:\windows\system32\c_1258.nls for he-il
x:\windows\system32\inputlocalemanager.dll
x:\windows\system32\inputservice.dll
x:\windows\system32\languageoverlayserver.dll
x:\windows\system32\msctfime.ime
x:\windows\system32\msctfmonitor.dll
x:\windows\system32\msctfp.dll
x:\windows\system32\msctfui.dll
x:\windows\system32\msctfuimanager.dll
x:\windows\system32\msutb.dll
x:\windows\system32\windows.ui.core.textinput.dll
x:\windows\system32\winlangdb.dll
x:\windows\system32\wordbreakers.dll

x:\windows\system32\ime\sptip.dll
x:\windows\system32\ime\en-us\sptip.dll.mui

I've also added all required mui files into x:\windows\system32\en-US\
------------
« Last Edit: May 23, 2020, 12:33:33 PM by ericgl »

slore

  • Moderator, WimBuilder
  • Sr. Chef
  • *****
  • Date Registered: Jun 2016
  • Posts: 664
Hi, ericgl and Lancelot,

I try he-IL ISO, it shows right by default preset.

ila_rendered

Now, I understand what you want clearly.

With en-US ISO source, then add he-IL keyboard layout, that how to show the Input Indicator.

Sorry, I have not consider that at all.

a Chinese source winre.wim as base can run any English softwares, but en-US source is hard to add the support of Chinese.

slore

  • Moderator, WimBuilder
  • Sr. Chef
  • *****
  • Date Registered: Jun 2016
  • Posts: 664
Well, I try en-US ISO, and use UI_Settings to change the keyboard, the Input Indicator shows.

Code: [Select]
start WinXShell -ui -jcfg wxsUI\UI_Settings.zip\KB_Layout.jcfg

ila_rendered

I don't add any new files or update registry item.


Z:\WimBuilder2\vendor\WinXShell\X_PF\WinXShell\wxsUI\UI_Settings.zip\KB_Layout.lua
Code: [Select]
function onclick(ctrl)
  suilib.call('run', 'Wpeutil.exe', string.format('SetKeyboardLayout 0x%s:%s', localeid, ctrl))
  sui:hide()
  suilib.call('sleep', 3000) -- ?
  sui:close()
end

If you want to call it by commandline, just call wpeutil.exe SetKeyboardLayout 0xNNN:0000040d

Quote
wpeutil.exe SetKeyboardLayout 0x40d:0000040d  (Alt+Shift)
wpeutil.exe SetKeyboardLayout 0x409:0000040d  (Ctrl+Shift)

IFY:the KeyboardSwitch is also in ChirsR's WIN10XPE, but it is a batch script not a GUI.
« Last Edit: May 23, 2020, 02:51:16 PM by slore »

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
Hi slore,

think simpler, when it comes to language it goes to complex .. (I once worked long time many years ago)
here are some info for your head start :

+
Adding "WesternEurope Language Group" keyboard is easy
only add files and any "keyboard" changer will work
see Gena\Finals\1 Optimizations\"WesternEurope Language Group" Plugin (I guess 45 keyboards German, French, Finnish .... )
They will also work fine when you add to none enu (eg. Chinese source)  build :wink:
"WesternEurope Language Group" is base group. (short story)

what you will find on the internet about changing keyboard apps (mostly for PE since PE1) are in fact limited to "WesternEurope Language Group"
Building with enu or none-enu source --> Adding "WesternEurope Language Group" keyboards are easy

BUT
Building with enu source (or other source than language)
they will not work nicely with complex languages: Turkish, Russian, Hebrew, Arabic,  ... keyboards by only adding files :wink:

-->
As a result a plugin for each :
see Gena\Finals\1 Optimizations\Turkish Language Group" "Russian Language Support" "Greek Language Group"

+
with Vista It becomes easier to create keyboard Plugins (no txtsetup etc. )
Since Nightman Plugins improved following same organization in passing years (>10 years)
See Azin\Basic\Localization\"Local Settings" Plugin
Each language/keyboard depends on user feedback  :wink:
eg.
// turkish by Max_Real Qnx
// Russian by NightMan
// Hebrew Aviv - by agrafi
....

with Azin-WimBuilder, since Wimbuilder - IME is default enabled  :thumbsup:
 Azin default adds language following hostos with "Local Settings" plugin (Turkish, Hebrew defined)
  And Keyboard operational on my side with IME keyboard indicator.  :cheers:

 I am sure ericgl will get Hebrew keyboard working fine after making an Azin-WimBuilder Default build.

*
I did my best not focusing on only my tr keyboard/language user with not being "WesternEurope Language Group"
 and saydin77 did his best to build with all sources on Gena,
  but I did not go to IME level, I can not read Chinese.

you are the only developer who uses Asian Language group that requires IME,
 I am sure the Patches you will develop will be good.  :great:

   Just think simple when developing lang related patches and open a gate for user feedback ....   :wink:


**
As I wrote previously, It is an only curiosity to me,
I am one of very rare (maybe only) lucky of none en-us (none Western Group) user who can remove en-us keyboard and use single tr-tr keyboard.
 I do not need any indicator or keyboard changer at all.  :great:

 But it is fun for me to see Wimbuilder IME Indicator after years and years (so included at first Azin picture  :cool::thumbsup:


:turtle:


Edit:
Moved reply here after I notice slore moved related posts here

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
+
@ slore
only reminding,
test WimBuilder with en-us source

Winlangdb.dll missing here
I edit my related previous reply with "tested with 2020.05.05 7aad2850"

as written previously, I believe Winlangdb.dll  should be added when Components\IME patch - IME indicator enabled.

ps:
I moved my previous reply here after noticing you move related posts here.  :thumbsup:

:turtle:

slore

  • Moderator, WimBuilder
  • Sr. Chef
  • *****
  • Date Registered: Jun 2016
  • Posts: 664
Quote
+
@ slore
only reminding,
test WimBuilder with en-us source

Winlangdb.dll missing here
I edit my related previous reply with "tested with 2020.05.05 7aad2850"

as written previously, I believe Winlangdb.dll  should be added when Components\IME patch - IME indicator enabled.

I tried 18362.1.190318-1202.19H1_RELEASE_CLIENTPRO_OEMRET_X64FRE_EN-US.ISO,
but the indicator show right label string without Winlangdb.dll.
(required by 20h1~?)

ila_rendered

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
Interesting  :confused:

I use Win10_1909_English_x64 source with Index 6 (Windows 10 Pro) (+ WimBuilder 2020.05.05 7aad2850)

Winlangdb.dll available at source index 6, but not at final/target !


It is that way (missing Winlangdb.dll) since I use Wimbuilder before 2020.05.05  :confused: :confused: :confused:

:turtle:

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
+
indicator show right label with bit40=1 too
see 2nd picture bit 40=1 http://theoven.org/index.php?topic=3137.msg37539#msg37539

bit with bit40=0  (windows default) 1st picture !

so on my side, there is a label info windows reads which is available without Winlangdb.dll but does not show (can not read) with bit40=0 (windows default)

and I thought ericgl change to Bit40=1 for that reason (maybe not) ...

ps:
Test results are with default WimBuilder settings + only wow64  :wink:

:turtle:

slore

  • Moderator, WimBuilder
  • Sr. Chef
  • *****
  • Date Registered: Jun 2016
  • Posts: 664
It should be missing as:

  • 1). it is not included in winre.wim
  • 2). There is not main.bat/last.bat to extract the file from install.wim source in WimBuilder2.  ( :confused:  :ohmy: Winlangdb.dll is already in IME_Common.bat)

I tried v2004(en_windows_10_business_editions_version_2004_x86_dvd_52bfcce8.iso), and it is still OK.
I don't know why yours showed the label with missing text string.

Edit: bad last_wimbuilder.log, this log is that built with zh-CN ISO.

Code: [Select]
Applying Patch:Z:\WimBuilder2\Projects\WIN10XPE\01-Components\IME\main.bat
[MACRO]AddFiles "Z:\WimBuilder2\Projects\WIN10XPE\01-Components\IME\Ime_Common.bat" :end_files
...
\Windows\System32\Winlangdb.dll
\Windows\SystemResources\Winlangdb.dll.mun
\Windows\System32\zh-CN\Winlangdb.dll.mui
...

Extracting file data: 0 MiB of 29 MiB (0%) done
Extracting file data: 0 MiB of 29 MiB (0%) done
Extracting file data: 0 MiB of 29 MiB (1%) done
« Last Edit: May 24, 2020, 02:09:40 AM by slore »

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
I don't know why yours showed the label with missing text string.
Maybe !

using en-us source do not like added tr settings and decide not to show reading from X location and decide to read fallback location Winlangdb.dll and fail ....

reminding, normally with other languages windows keeps en-us primary ..... by adding Secondary language .....

to test the theory I will test without tr settings after I eat something.  :smile:

See You
:turtle:

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
Hi slore,

I notice your edit on your previous reply :
( :confused:  :ohmy: Winlangdb.dll is already in IME_Common.bat)[/li][/list]

well Winlangdb.dll does not exists here

inside log there is
Code: [Select]
Applying Patch:D:\1\9WimBS\Projects\WIN10XPE\01-Components\IME\main.bat
Applying Patch:D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories\main.bat
[MACRO]AddFiles \Windows\system32\mspaint.exe
Windows\system32\mspaint.exe
\Windows\SystemResources\mspaint.exe.mun
\Windows\System32\en-US\mspaint.exe.mui
but I do not see any line with Winlangdb.dll after line with IME\main.bat

I hope the attached log helps you to figure out ??

:turtle:

slore

  • Moderator, WimBuilder
  • Sr. Chef
  • *****
  • Date Registered: Jun 2016
  • Posts: 664
I think some flags/Vars make it goto :EOF

I think you can add echo on in the IME\main.bat to see full log.

See it tomorrow,  I should go to bed, 01:52 AM now.
« Last Edit: May 23, 2020, 05:53:11 PM by slore »

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
ok  :thumbsup:
After @Echo off line I add @Echo on

following lines of my previous reply now more info :

Code: [Select]
Applying Patch:D:\1\9WimBS\Projects\WIN10XPE\01-Components\IME\main.bat

D:\1\9WimBS\Projects\WIN10XPE\01-Components\IME>set IME_Startup=0

D:\1\9WimBS\Projects\WIN10XPE\01-Components\IME>if exist Ime_en-US.bat (
if "xtrue" == "xtrue" (
set IME_Startup=1 
 call Ime_Common.bat

 if "xtrue" == "xtrue" call Ime_en-US.bat
)

D:\1\9WimBS\Projects\WIN10XPE\01-Components\IME>if not "x0" == "x1" goto :EOF

D:\1\9WimBS\Projects\WIN10XPE\01-Components\IME>popd

D:\1\9WimBS\Projects\WIN10XPE\00-Configures\Build>(call :apply_patch "D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories\main.bat" )

D:\1\9WimBS\Projects\WIN10XPE\00-Configures\Build>if not exist "D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories\main.bat" goto :EOF

D:\1\9WimBS\Projects\WIN10XPE\00-Configures\Build>pushd "D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories\"

D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories>echo \033[96mApplying Patch:D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories\main.bat   | cmdcolor.exe
Applying Patch:D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories\main.bat

D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories>call "D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories\main.bat"

D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories>set AddFiles_Mode=merge

D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories>if "xfalse" == "xtrue" (
call AddFiles "\Program Files\Windows NT\Accessories\" 
 call RegCopyEx Classes ".docx,.odt,.rtf,docxfile,odtfile,rtffile" 
 rem call RegCopyEx Classes "textfile,Wordpad.Document.1,Application\wordpad.exe" 
 call AddFiles "\ProgramData\Microsoft\Windows\Start Menu\Programs\Accessories\Wordpad.lnk"
)

D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories>if "xtrue" == "xtrue" call _mspaint.bat

D:\1\9WimBS\Projects\WIN10XPE\01-Components\za-Accessories>call AddFiles \Windows\system32\mspaint.exe
[MACRO]AddFiles \Windows\system32\mspaint.exe
Windows\system32\mspaint.exe
\Windows\SystemResources\mspaint.exe.mun
\Windows\System32\en-US\mspaint.exe.mui


also included on my previous log there is :

Code: [Select]
Applying Patch:D:\1\9WimBS\Projects\WIN10XPE\01-Components\IME\last.bat
Rename input file failed.
FC: cannot open X:\WINDOWS\SYSTEM32\INPUTSERVICE.DLL.ORG - No such file or folder

Could Not Find X:\Windows\System32\InputService.dll.org



Good Night, Have a nice Dream
 :camping: :surfing: :beach_chair: :easy_life:

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
Hi slore,

It is not about Wimbuilder-Customize\Components\IME patch, IME patch is correctly designed following source  :thumbsup:

I disable Wimbuilder-Customize\Components\IME patch
( also disabled wow64)

Azin-WimBuilder adds En and TR keyboard settings --> and I get IME Indicator at right down  :thumbsup:

==
WimBuilder adds IME indicator required files (maybe winre.wim), only missing Winlangdb.dll that is all.
 When there is more than 1 keyboard, IME indicator appears (eg. Azin adds following hostos -> here It adds Enu and Tr keyboard // ericgl Azin will add Enu and Hebrew keyboard)
 When there is single keyboard, IME indicator does not appear (eg. If you build WimBuilder with ENU Source)

*
None ko-KR zh-CN zh-TW users only like to change keyboard with IME indicator, that is all.
with other words
no need extra things with "Customize\Components\IME patch" as long as there is IME indicator to change keyboard

(after adding required files and registry for the correct language group, 3rd party keyboard indicators do that job well too, which we use for years now)

The only question remains, where does Wimbuilder "Ime Indicator" comes from, so you can add Winlangdb.dll to that place.

Good news when you wake up and have time  :cheers:

:turtle:

ericgl

  • Jr. Chef
  • **
  • Date Registered: Dec 2015
  • Posts: 71
Interesting, Lancelot.

I'm still not sure what's missing in my build. I've added all required files and reg settings.
I'm currently re-checking all my settings.
----
BTW, it seems some files in Azin project get flagged and deleted by Symantec AntiVirus.
Also, many files in LSP project get flagged and deleted as well.

Everything is OK in Win10XPE project and in WimBuilder2 - they pass AV check.

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
Hi ericgl,

False Positives are not new
http://theoven.org/index.php?topic=2710.0

You only use Symantec AV, a  Bitdefender user fail with Win10XPE Project

so far no reports only for WimBuilder2


All projects will have false-positive in passing time and an increasing number of users.  :wink:
Regular users like to report (or automatic report) things to av companies which are flagged as virus !
Good for secretary computer where end-user suppose to use a single application or a small set of application (spreadsheets documents etc.), bad for the "technician computer"
 ("technician computer" name given by ms for the same goal  :lol: they can not say "disabled av computer"  :wink:)

Let us know new false positives on false-positive topic http://theoven.org/index.php?topic=2710.0
 :thumbsup:


*
We do not know your build !

Projects give reproducible results :

On Azin\AppY\System Tools\"Test Plugin" add single line
Require_FileQ,Winlangdb.dll
enable Azin\AppY\System Tools\"Test Plugin" Plugin  :wink:

I assume you have hebrew settings on your host computer,
Make a build, see if your hebrew keyboard settings are on Azin-Wimbuilder build and you have hebrew keyboard with indicator working fine ?
->
with the answer yes you can search missings on your build

(Add folder to your AV exclusion folder list or disable av during build  :wink: )

:turtle:
« Last Edit: May 24, 2020, 01:09:34 AM by Lancelot »

 

Powered by EzPortal