zoukankan      html  css  js  c++  java
  • .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:WINDOWSsystem32osk.exe");
                        bool isWow64FsRedirectionReverted = Wow64RevertWow64FsRedirection(ptr);
                    }
                }
            }

        }

  • 相关阅读:
    python 编码问题
    关于网页划词翻译
    clang 编译 c++
    Java流(Stream)操作实例筛选、映射、查找匹配
    JAVA系列笔记十八之nohup实现后台运行程序
    VSCode汇总
    java jdk 国内下载镜像地址及安装
    LocalDate、LocalDateTime与timestamp、Date的转换
    List.sort()排序功能
    Java Array、List、Set互相转化
  • 原文地址:https://www.cnblogs.com/ljs0322/p/8037555.html
Copyright © 2011-2022 走看看