C#中的SendKeys.Send操作CMD命令的问题
来源:互联网 发布:mac上装ios模拟器 编辑:程序博客网 时间:2024/04/30 17:19
今日需要实现通过C#操作cmd窗口的功能,在使用SendKeys.Send或SendKeys.SendWait方法进行按键模拟的时候发现,如果传入的Keys为小写开始则不被执行
代码:
Process p = new Process(); p.StartInfo.FileName = "cmd.exe"; p.StartInfo.UseShellExecute = true; p.StartInfo.RedirectStandardInput = false; p.StartInfo.RedirectStandardOutput = false; p.StartInfo.RedirectStandardError = false; p.StartInfo.CreateNoWindow = false; p.Start(); Thread.Sleep(2000); SendKeys.Send("perl -v{Enter}");
结果:
不会有任何执行。但这里如果只是用SendKeys.Send 向一个文本编辑框输入文本,那大小写都可以正常输入。
Microsoft 官方也并没有相关的解释,只是给了下面一个提示
但我个人觉得歪果仁跟我们的键盘大小写应该一样吧,这个问题也没必要深究,所以自行测试。
经过个人测试,发现问题在于输入文本的大小写,如果将“perl”改成大写开始,并且同时需要把“-v”也改成大写,这样就可以正常执行了。
总结:
在SendKeys.Send调用cmd执行cmd命令的时候,当传入小写的字符,则cmd不显示。
阅读全文
0 0
- C#中的SendKeys.Send操作CMD命令的问题
- C# SendKeys.Send
- SendKeys.Send()的使用
- SendKeys.Send()的使用
- 转贴 SendKeys.Send()的使用
- C# SendKeys.SendWait 方法和SendKeys.Send 方法区别
- C# - The differences between SendKeys.Send and SendKeys.SendWait
- winform模拟键盘操作SendKeys.Send()与SendKeys.SendWait()
- c#执行windows的cmd命令操作
- C# 调用 CMD 命令 遇到的问题
- window中的cmd中的mysql的相关操作命令
- C# Socket的Send问题
- SendKeys.Send 键代码
- SendKeys.Send()输入中文
- SendKeys.Send 方法
- c#软件操作-cmd命令全解
- C# 模拟键盘操作SendKey(),SendKeys()
- 模拟键盘输入就是使用SendKeys.Send(“汉字”)与SendKeys.SendWait(“字母”)实现的
- 题目24-素数距离问题
- 170905_个人机器学习初步计划
- 显示mac上隐藏的资源库文件方法
- 彻底理解样本方差为何除以n-1
- python os 模块常用命令
- C#中的SendKeys.Send操作CMD命令的问题
- 今天真是劳碌的一天
- <25>——Reverse Nodes in k-Group
- python --- 元组与集合的基础知识
- Linux-CentOS版挂载网络磁盘方法
- encodeURI与encodeURIComponent方法的区别
- 码流分析工具ffprobe.exe介绍
- 224. Basic Calculator
- 刷紫书第三章习题(习题3-7到习题3-12)