【问题标题】:Launch JavaScript from Website / Exit Application从网站/退出应用程序启动 JavaScript
【发布时间】:2012-05-09 20:12:10
【问题描述】:

长话短说,它是关于带有 WebBrowser 控件的 Windows 窗体应用程序。该应用程序打开一个网站,填写用户名和密码,登录,通过执行 javascript 启动一个 vpn 客户端 (exe)。一旦 vpn 客户端成功启动,应用程序应该退出。前半部分工作正常。

我想检查vpn客户端是否正在运行,如果是,它应该关闭我的应用程序,否则等待exe启动。

private void LaunchJS()
        {
            HtmlDocument doc = webBrowser1.Document;
            Object js = doc.InvokeScript("launchJS");
            label1.Text = "complete";
        }

.

if (label1.Text == ("complete"))
            {
            bool prc = false;
            while (!prc)
            {
                foreach (Process clsProcess in Process.GetProcesses())
                {
                    if (clsProcess.ProcessName.Contains("JS_plugin"))
                    {
                        prc = true;
                        Application.Exit();
                    }
                }
            }
            }

我遇到的问题是,当我启用代码的第二部分(检查过程)时,javascript 启动不成功。 java脚本没有执行,程序永远不会启动,检查过程进入无限循环。

任何帮助将不胜感激!

【问题讨论】:

标签: c# javascript process


【解决方案1】:

在单独的线程中进行进程检查解决了我的问题。

private void GetPRo()
{
    if (label1.Text == ("complete"))
    {
        bool prc = false;
        while (!prc)
        {
            foreach (Process clsProcess in Process.GetProcesses())
            {
                if (clsProcess.ProcessName.Contains("JS_plugin"))
                {
                    prc = true;
                    Application.Exit();
                }
            }
        }
    } 
}

.

Thread CloseApp = new Thread(new ThreadStart(GetPro));
CloseApp.Start();

【讨论】:

    猜你喜欢
    • 2014-08-02
    • 1970-01-01
    • 2010-10-18
    • 1970-01-01
    • 2010-12-22
    • 2017-12-13
    • 2013-09-17
    • 1970-01-01
    • 2013-01-10
    相关资源
    最近更新 更多