C#winform程序运行到多线程后跳出

C#winform程序运行到多线程后跳出,第1张

你的应该是

子线程处理过程中发生了异常

现在net

的机制是:子线程发生的异常

主线程

是捕获不到的

子线程未处理的异常都会使程序退出。

你最好在

子线程的函数里去捕获异常然后处理掉

添加FormClosing或者FormClosed事件

private void Form1_Load(object sender,EventArgs e)

{

    thisFormClosing+=Form1_FormClosing;

}

private void Form1_FormClosing(object sender,FormClosingEventArgs e)

{

    MessageBoxShow("即将关闭窗体。。。");

}

你说的意思有些不明确, 主窗口是可以关闭的呀,不过关闭后,整个程序就关闭了

关闭方法: ApplicationExit(); 你可以用Timer定时器来关闭并结束主窗体程序

窗体的 Close()方法才是如你所说只是隐藏,其实对象还在,可以用Show()方法再次显示出来

程序的主窗体必须用ApplicationRun 来创建

如果只是这样,用SystemWindowsFormsSendKeys类就可以了,利用这个方法你不需要获取浏览器的

句柄

,不过你的浏览器要处于激活状态(也就是聚焦状态),可以让这些代码在后台运行:

后退:

SendKeysSend("%{LEFT}");//后退一步

//SendKeysSend("%{LEFT

5}");//后退5步

SendKeysFlush();

前进:

SendKeysSend("%{RIGHT}");

//SendKeysSend("%{RIGHT

5}");//前进5步

SendKeysFlush();

可以用Process类来getprocess, 得到当前运行的所有进行,然后一一调用kill或是terminate方法中止运行之。

不过,可能需要判断一下是不是系统进程。

代码嘛,懒得写了。你看一下msdn里process类的方法说明就行了。有例子的。

以上就是关于C#winform程序运行到多线程后跳出全部的内容,包括:C#winform程序运行到多线程后跳出、c#winform 怎么监视应用程序退出、WINFORM如何关闭主窗口等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9348406.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存