社区
网络及通讯开发
帖子详情
结束任务 和结束进程
海嵌
2005-05-13 10:42:28
为什么程序: 客户端结束进程的方式 可以激发事件, 而结束任务不可以激发服务器端的事件!怎样避免这样的问题;
结束任务 和结束进程什么本质区别,请高手们指点谜经!
...全文
318
11
打赏
收藏
结束任务 和结束进程
为什么程序: 客户端结束进程的方式 可以激发事件, 而结束任务不可以激发服务器端的事件!怎样避免这样的问题; 结束任务 和结束进程什么本质区别,请高手们指点谜经!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
icwin
2005-05-19
打赏
举报
回复
up
海嵌
2005-05-19
打赏
举报
回复
真不知道该怎么解决这个问题,客户端 结束任务 是使得TerverSocket的 ServerSocket1ClientDisconnect事件吗?!
看来问题反映出来的确如此!
只是猜测,或许错误或者还有别的原因;
那位大虾能给出点理论上的说明,不胜感激......
minsheng2113
2005-05-18
打赏
举报
回复
在客户端建立连接、发送消息和断开连接出错时,会触发TerverSocket的 OnClinentError事件!
海嵌
2005-05-15
打赏
举报
回复
void __fastcall ServerSocket1ClientError(TObject *Sender,
TCustomWinSocket *Socket, TErrorEvent ErrorEvent, int &ErrorCode)
{
changeState(socket); //更改数据库中相对应字段的状态
ErrorCode=0;
}
void __fastcall TForm1::ServerSocket1ClientDisconnect(TObject *Sender,
TCustomWinSocket *Socket)
{
setState(Socket);//执行操作,左后还要更改数据库字段
}
客户段正常结束当然是正确的,如果客户采取非法措施比如结束任务,表现出来没有执行changeState(socket); 如果客户端采取结束进程的方式,于是正确了!
我又没有打算在客户端程序中隐藏任务管理器里的应用程序;
急需要解决方案,如果分数不够,可以再加分......
titan_ysl
2005-05-14
打赏
举报
回复
一楼误导,我说怎么楼主说的现象是反的。
楼主说的 结束任务 的是程序自己关闭, 结束进程 才是系统直接把该进程给Kill了。
titan_ysl
2005-05-14
打赏
举报
回复
在 ServerSocket1ClientError()更改数据库中相应字段项?
客户端正常结束时 在ClientSocket1->Active=false 后 ServerSocket1ClientError()是不会出现的。
更改数据库中相应字段项应在下面的事件
void __fastcall TForm1::ServerSocket1ClientDisconnect(TObject *Sender,
TCustomWinSocket *Socket)
{
}
或客户端在关闭前发送结束信息,服务端在
void __fastcall TForm1::ServerSocket1ClientRead(TObject *Sender,
TCustomWinSocket *Socket)
{
}
事件解析出结束信息再更改数据库。
海嵌
2005-05-14
打赏
举报
回复
程序是这样的,服务器端程序是在 ServerSocket1ClientError()更改数据库中相应字段项,如果客户端结束进程的话,可以正常的更改数据库中字段,同时正确显示断开与某Socket的连接;相应的,如果结束任务,只是在服务器端断开Socket的连接,并没有执行相应的更改数据库字段的操作。
郁闷!!!
titan_ysl
2005-05-14
打赏
举报
回复
问:束任务不可以激发服务器端的事件??
答:有的,是下面这个事件,从 Socket->RemoteHost可以得到出错的主机名,ErrorCode=0 系统就不报错了。
void __fastcall TForm1::ServerSocket1ClientError(TObject *Sender,
TCustomWinSocket *Socket, TErrorEvent ErrorEvent, int &ErrorCode)
{
}
//---------------------------------------------------------------------------
happyct
2005-05-13
打赏
举报
回复
个人理解:客户端自己结束,是由自己来控制各种资源的释放,同时也给了自己处理各种消息的机会
结束任务的是系统直接把该进程给Kill了。事先(是否会通知)该进程呢?应该不会吧。
minsheng2113
2005-05-13
打赏
举报
回复
up
海嵌
2005-05-13
打赏
举报
回复
那么应该怎么处理呢?!
自己顶顶
C# 禁止
结束
进程
,保护
进程
不被
结束
(源代码)
C#,保护
进程
,通过VisualStudio.NET2005平台,控制系统不能
结束
自身
进程
,控制系统不能
结束
指定
进程
,已经生成了一个动态链接库,方便调用,(C#工程源代码),具体内容访问:http://blog.csdn.net/kangkanglx/archive/2010/06/25/5692984.aspx
taskmgr.exe下载
好不容易找到的,如果任务管理器打不开就用这个吧,解压后把taskkill.exe、tasklist.exe及taskmgr.exe三个文件复制到C:\WINDOWS\system32就可以了
结束
进程
和
结束
进程
树有什么区别?
结束
进程
”与“
结束
进程
树”是用来
结束
一个或多个
进程
用的。
进程
树也许你是头回听说,我这里想解释一下。所谓
进程
树实际上就是一组
进程
,而这一组
进程
(子
进程
)是由一个
进程
(父
进程
)创建的。当你选择“
结束
进程
树”的时候,会将这一组
进程
都全部
结束
掉。强烈推荐
结束
父
进程
的时候使用这个功能。这样才能保证
进程
释放所有资源,不出现僵
进程
(哇,什么是僵
进程
?坏了,越说越多了。大家只要知道这个概念就可以:子
进程
需要由父...
(亲测)使用cmd
结束
进程
的3种方法
有时候当我们想
结束
某个
进程
时发现打不开任务管理器,也许是后台运行负载,也者是病毒引起。今天秋水介绍一下不用任务管理器来
结束
进程
。点击电脑桌面的左下角“开始”菜单或 windows键+R键输入cmd回车;输入tasklist回车以显示
进程
,如图:重要:同一个应用打开关闭再打开,pid会变化,所以每次操作前请获得最新的tasklist。方法一下面我们就是要
结束
想要禁止的
进程
,比如我要
结束
我的QQ,它的...
任务管理器无法
结束
进程
在使用任务管理器
结束
进程
的时候,都有遇到无法
结束
进程
的情况,这时候需要怎么办呢?今天U大侠小编就和大家说说解决任务管理器无法
结束
进程
的小技巧吧! 任务管理器 方法一、 1、首先打开开始菜单中的运行,在运行对话框中输入“CMD”。回车打开命令提示符窗口; 2、在打开的命令提示符窗口中然后输入:tasklist可以查看到现在所有
进程
。 3、然后想要关闭
网络及通讯开发
1,317
社区成员
8,874
社区内容
发帖
与我相关
我的任务
网络及通讯开发
C++ Builder 网络及通讯开发
复制链接
扫一扫
分享
社区描述
C++ Builder 网络及通讯开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章