.net調用系統軟鍵盤(兼容win7及win10)


沒有什么技術說明,也是查詢出來的,在此做記錄

public class StartKeyBoard
    {
        public static bool isShowNumBoard = false;
        [DllImport("kernel32.dll", SetLastError = true)]
        public static extern bool Wow64DisableWow64FsRedirection(ref IntPtr ptr);
        [DllImport("kernel32.dll", SetLastError = true)]
        public static extern bool Wow64RevertWow64FsRedirection(IntPtr ptr);
        public static void StartKeyBoardFun()
        {
            string path = "C:/Program Files/Common Files/microsoft shared/ink/TabTip.exe";
            if (File.Exists(path))
            {
                Process p = Process.Start(path);
            }
            else
            {
                //判斷軟鍵盤是否進程是否已經存在,如果不存在進行調用
                Process[] pro = Process.GetProcessesByName("osk");
                //說明已經存在,不再進行調用
                if (pro != null && pro.Length > 0)
                    return;
                IntPtr ptr = new IntPtr();
                bool isWow64FsRedirectionDisabled = Wow64DisableWow64FsRedirection(ref ptr);
                if (isWow64FsRedirectionDisabled)
                {
                    Process.Start(@"C:\WINDOWS\system32\osk.exe");
                    bool isWow64FsRedirectionReverted = Wow64RevertWow64FsRedirection(ptr);
                }
            }
        }

    }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM