背景

App需要调用系统软键盘输入数据,自己去实现软键盘有些复杂,现在又是急需,没时间去研究实现软键盘,所以只能调用系统软键盘。

正文

需要添加命名空间,

using System.Diagnostics;

在系统中打开系统软键盘,

Process kbpr = System.Diagnostics.Process.Start("osk.exe"); // 打开系统键盘

kbpr既是该软键盘的进程句柄。

若是需要关闭该软键盘,

if (!kbpr.HasExited)
{
kbpr.Kill();
}

此处一定要询问kbpr进程是否退出(用户直接点击关闭软键盘),如若软键盘已被关闭,还执意调用kbpr.Kill(),就会报错该进程不存在。

若要开启该软键盘,

if (kbpr.HasExited)
{
kbpr = System.Diagnostics.Process.Start("osk.exe");
}

同样需要询问kbpr进程是否已经开启,确保不会重复调用osk.exe程序。

此处需要注意的是kbpr进程一开始没有赋值不能对其进行操作,否则会报错该句柄未初始化不可使用之类的错误。

至此记录完毕。

参考链接

记录时间:2017-5-8

记录地点:深圳WZ

Visual studio之C# 调用系统软键盘(外部"osk.exe")的更多相关文章

  1. 系统软键盘">Android在外接物理键盘时,如何强制调用系统软键盘?

    第一次写,写的不好请见谅 物理键盘映射过程: 手机/system/usr/keylayout/*.kl :内核将keyCode映射成有含义的字符串KeycodeLabels.h : framework ...

  2. Android调用系统软键盘

    /** * * @MethodName:closeInputMethod * @Description:关闭系统软键盘 * @throws */ public void closeInputMetho ...

  3. .net调用系统软键盘(兼容win7及win10)

    没有什么技术说明,也是查询出来的,在此做记录 public class StartKeyBoard    {        public static bool isShowNumBoard = fa ...

  4. Visual studio之C#实现数字输入模拟键盘

    背景 当前做的一个上位机需运行在工控机上,众所周知,工控机不可能配备键盘,只能是触屏,而我当前的上位机需要输入参数,于是之前的解决办法既是调用Windows自带的OSK.exe虚拟键盘,方法在我的另一 ...

  5. android制,点击EditText时刻,隐藏系统软键盘,显示光标

    由于项目中要用自己定义的随机键盘,所以必须得屏蔽系统软键盘,可是在4.0的測试系统来看,使用editText.setInputType(InputType.TYPE_NULL)方法固然能隐藏键盘,可是 ...

  6. Android之弹出/隐藏系统软键盘

    Android弹出/隐藏系统软键盘的代码如下: InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT ...

  7. Visual Studio 2017 调试器的工作进程(msvsmon.exe)意外退出 调试将终止

    开发环境: Windows 10 in Parallels Desktop Visual Studio 15.6 场景还原: 使用 Visual Studio 15.6 (即 Visual Studi ...

  8. 在visual studio 2010中调用ffmpeg

    转自:http://blog.sina.com.cn/s/blog_4178f4bf01018wqh.html 最近几天一直在折腾ffmpeg,在网上也查了许多资料,费了不少劲,现在在这里和大家分享一 ...

  9. js调用系统虚拟键盘

    <input type="text" id="tt" /> <script language="javascript" t ...

随机推荐

  1. UVA 111(LCS问题)

     History Grading  Background Many problems in Computer Science involve maximizing some measure accor ...

  2. BZOJ 1257 [CQOI2007]余数之和sum(分块)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1257 [题目大意] 给出正整数n和k,计算j(n,k)=k mod 1 + k mod ...

  3. oracle client PLSQL配置

    date:20140525auth:Jin platform :windows 一.服务端启动服务和创建账号# su - oracle$ lsnrctl start$ sqlplus / as sys ...

  4. web安全开发指南--认证

    1.认证 1.1.       认证和密码管理安全规则 1 认证控制必须只能在服务器端执行. 2 除了指定为公开的资源,对所有其它资源的访问都必须先经过认证. 3 为所有关键凭证实施防"暴力 ...

  5. a标签点击后页面显示个false

    最近遇到个问题,在html页面中使用a标签,在href属性中调用一个function,而function中返回的是return false.结果页面被跳转了,然后页面上显示一个false. 一看到这个 ...

  6. [Android Pro] ListView,GridView之LayoutAnimation特殊动画的实现

    转载自:http://gundumw100.iteye.com/blog/1874545 LayoutAnimation干嘛用的?不知道的话网上搜一下. Android的Animation之Layou ...

  7. 容器set和multiset

    一.set和multiset基础 set和multiset会根据特定的排序准则,自动将元素进行排序.不同的是后者允许元素重复而前者不允许. 需要包含头文件: #include <set> ...

  8. iOS:分页控件UIPageControl的使用

    分页控件:UIPageControl   功能:通常搭配滚动视图一起使用,设置pagingEnabled=YES即可,UIScrollView会被分割成多个独立页面,用户的滚动体验则变成了页面翻转,一 ...

  9. git 统计代码量 shell脚本

    #!/bin/bash # 统计代码量 # 使用方法: sh gitstat.sh "2017-11-01" "2017-11-30" "JamKon ...

  10. SQL盲注攻击的简单介绍

    1 简介     1.1 普通SQL注入技术概述     目前没有对SQL注入技术的标准定义,微软中国技术中心从2个方面进行了描述[1]:     (1) 脚本注入式的攻击     (2) 恶意用户输 ...