Hi Eli,

You need to install the Chinese(simplified, China)  language pack and then add Microsoft Pinyi input method
under the Chinese(simplified, China)  language . Then you can reroduce the issue when activating the 
 Microsoft Pinyi input method in Emacs.

You can follow the below steps in picture to Add Chinise language and Microsoft Pinyi

1. Add Chinese (Simpified, China) langauge



2. Add Microsoft Pinyi in Chinese langauge

In case you can't see the pictures. I also put it in the  attachment.



From: Eli Zaretskii <eliz@gnu.org>
Sent: Saturday, June 22, 2024 3:23 PM
To: Eason Huang <aqua0210@foxmail.com>
Cc: 71711@debbugs.gnu.org <71711@debbugs.gnu.org>
Subject: Re: bug#71711: 30.0.50; w32-get-ime-open-status always return t
 
> From: Eason Huang <aqua0210@foxmail.com>
> Date: Sat, 22 Jun 2024 08:00:05 +0800
>
> With the latest version of Windows 10 and Windows 11, the
> `w32-get-ime-open-status` and `w32-set-ime-open-status` doesn't works
> anymore.
>
> The `w32-get-ime-open-status` will alway return t.
>
> Steps to reproduce:
>
> 1. Start Emacs with ` emacs -Q`
> 2. open any buffer(ex. *scratch*)
> 3. make sure ativate an input method, here I use the Microsoft Pinyin in
> system
>
> 4. eval `w32-get-ime-open-status` in *scratch* , return t
> 3. eval `(w32-set-ime-open-status nil)` and then eval
> `w32-get-ime-open-status`, it also return t. nil is expected

I cannot reproduce this (but I don't really have Microsoft Pinyin or
similar installed).  On my Windows 11 system, w32-get-ime-open-status
returns nil originally, and if I call (w32-set-ime-open-status t), it
then returns t.

If our IME support stopped working for some reason, someone
knowledgeable about Windows IME will need to debug this and find the
reason.