在Windows进程中调用右键菜单c#

我花了最近3天试图在网上find一个解决scheme,并由我自己。 发现了很多相关的材料,但是没有什么能适合我的情况 我已经通过下面的代码启动了一个新的进程,它是Windows语音识别应用程序,我想以编程方式调用右键菜单中的一个选项。

我已经testing了Postmessage,Sendmessage和sendClick事件,他们都没有工作。

namespace WindowsFormsApplication1 { public partial class Form1 : Form { [DllImport("User32.dll")] public static extern int SetForegroundWindow(IntPtr point); [DllImport("user32.dll",CharSet = CharSet.Auto)] static extern IntPtr FindWindow(string lpClass,string lpW); [DllImport("user32.dll",CharSet = CharSet.Auto)] static extern IntPtr SendMessage(IntPtr hWnd,uint msg,IntPtr wParam,IntPtr lParam); [return: MarshalAs(UnmanagedType.Bool)] [DllImport("user32.dll",SetLastError = true)] public static extern void PostMessage(IntPtr hWnd,int msg,int wParam,int lParam); public Form1() { //InitializeComponent(); const int WM_COMMAND = 0x0111; Process proc = new Process(); proc.StartInfo.FileName = @"C:ProgramDataMicrosoftwindowsstart MenuProgramsAccessibilitySpeech Recognition.lnk"; proc.Start(); Thread.Sleep(200); IntPtr Window = FindWindow(null,"Speech Recognition"); SetForegroundWindow(Window); SendKeys.SendWait("{Move 200,200}"); } } }

CoreAudio OnVolumeNotification事件订阅会导致explorer.exe中的cpu使用率过高

.net类在Linux上通过SSH远程执行?

如何防止或检测“%APPNAME%停止工作”对话框?

从Win XP以编程方式从C#中注销用户

计算机上的位置坐标显示X = -32000,Y = -32000

Windows RegKey – 认浏览器应用程序path

将exe指向可执行文件目录之外的dll

.Net使用特殊文件夹符号

如何从另一个应用程序的窗口中的控件读取数据?

如何为Windows编写一个非常简单的本机应用程序(不需要.NET并通过安装过程)

假设你想Open the Speech Dicitonary你可以这样做

运行命令行: SpeechUXWiz.exe VocabularyManager

使用API​​: 使用C#将新词添加到Windows语音识别中

您将需要使用SAPI自动化API (也称为SpeechLib)来访问ISpLexicon接口。

特别是, ISpLexicon::AddPronunciation会为用户词库添加一个新的单词(及其相关的发音)。

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....