如何从C#控制台应用程序自动启动缩放会议
我正在尝试构建一个简单的应用程序(作为控制台应用程序),在指定时间自动进入缩放会议 应用程序使用如何从C#控制台应用程序自动启动缩放会议,c#,browser,process,C#,Browser,Process,我正在尝试构建一个简单的应用程序(作为控制台应用程序),在指定时间自动进入缩放会议 应用程序使用过程打开缩放会议。启动功能,然后等待“缩放会议”过程开始 如果我使用具有正确参数的Windows快捷方式文件(.lnk扩展名),它会工作得很好 但是,当我使用“常规”缩放链接(url)时,is不起作用,因为它打开浏览器并等待用户输入(显示警报) 我知道如何向进程发送输入,所以我所需要的只是对打开的浏览器窗口的引用,但我找不到它 Process.Start不会返回它,当我遍历所有进程(Process.g
过程打开缩放会议。启动
功能,然后等待“缩放会议”过程开始
如果我使用具有正确参数的Windows快捷方式文件(.lnk扩展名),它会工作得很好
但是,当我使用“常规”缩放链接(url)时,is不起作用,因为它打开浏览器并等待用户输入(显示警报)
我知道如何向进程发送输入,所以我所需要的只是对打开的浏览器窗口的引用,但我找不到它
Process.Start
不会返回它,当我遍历所有进程(Process.getprocesss
)时,我找不到任何可以搜索的有用名称
那么,如何获取对浏览器进程的引用呢?或者至少在启动时发送输入
提前感谢。=编辑=== 在深入研究Windows注册表之后,我发现了一个更简单的代码来实现它:
public static void OpenZoomMeeting(string link)
{
string zoomDirectory = Environment.ExpandEnvironmentVariables(@"%APPDATA%\Zoom\bin");
ProcessStartInfo startInfo = new ProcessStartInfo
{
FileName = $@"{zoomDirectory}\Zoom.exe",
Arguments = $"--url={link}",
WorkingDirectory = zoomDirectory
};
Process.Start(startInfo);
}
==旧代码===
多亏了
他说我应该使用WebBrowser
在没有提示的情况下打开会议,所以我研究了一下
因为我的应用程序是一个控制台应用程序,我不能只使用WebBrowser
,所以我找到了它,它对我很有用
谢谢你的帮助
=代码===
private void RunBrowserThread(string url) {
var th = new Thread(() => {
var br = new WebBrowser();
br.DocumentCompleted += Browser_DocumentCompleted;
br.Navigate(url);
Application.Run();
});
th.SetApartmentState(ApartmentState.STA);
th.Start();
}
void Browser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) {
var br = sender as WebBrowser;
if (br.Url == e.Url) {
Console.WriteLine("Natigated to {0}", e.Url);
Application.ExitThread(); // Stops the thread
}
}
使用浏览器时,您需要使用Navigate方法()连接到URL。@jdweng感谢您的回复,我在哪里可以找到此方法?webbrowser1.Navigate(“URL”);您使用的是什么类型的项目?尝试一个表单应用程序并添加浏览器控件。@jdweng我忘了写,我正在使用控制台应用程序启动会议。WebBrowser在WinForms应用程序上工作,但在控制台应用程序上什么也没发生。