易截截图软件、单文件、免安装、纯绿色、仅160KB

VB winsock 动态加载和卸载问题

Option Explicit
Private MaxIndex As Integer

Private Sub Form_Load()
MaxIndex = 0
Winsock(0).Listen
End Sub

Private Sub Winsock_Close(Index As Integer)
Winsock(Index).Close
Unload Winsock(Index)
End Sub

Private Sub Winsock_ConnectionRequest(Index As Integer, ByVal requestID As Long)
If Index = 0 Then
    MaxIndex = MaxIndex + 1
    Load Winsock(MaxIndex)
    Winsock(MaxIndex).Accept requestID
End If
End Sub

Private Sub Winsock_DataArrival(Index As Integer, ByVal bytesTotal As Long)
Dim strMsg As String
Winsock(Index).GetData strMsg
MsgBox Index & MaxIndex
End Sub


这段代码能动态加载winsock控件,为什么不能动态卸载啊
msgbox 的值永远是+1的,高手帮忙改下啊

当加载的winsock close的时候就卸载这个加载的winsock

WinSock 控件发生 Close 事件后,属性 State = sckClosed
以后侦听到新的连接请求后可以重用该控件,也可以开一个定时器定期卸载状态为关闭的控件。
MaxIndex 毫无意义,直接用 Winsock.UBound 就能取得。

看来楼主是犯了这样一个典型的错误:
试图在类实例的事件中释放这个类实例本身.
我的意思是,恐怕没有一种语言在开发时,允许做这种事吧.


引用
并非在Winsock_Close事件中不能卸载它自己.

以前记得是遇到过这问题的,不过没有细究是哪里的具体问题,就用定时


相关问答:

vb中如何实现对象属性的动态设置 - VB / 基础类

本人使用的是VB6.0版本
假设有一个对象A,A内有类型为B的对象属性。现在的问题是,需要添加若干个B对象作为A对象的属性。如,
 A.B1,A.B2,...
但具体添加多少个B对象作为A对象的属性则视具体情况不同而不同 ......

vb可以这样做不? - VB / 非技术类

可以吗
好奇怪的题目额!!

可以告诉我们你到底想问什么 ?

2分给我的话就可以。

........................可以吗

可以!


  纠结,

29. vb可以这样做不? ( H )√
 A. ......

vb超简单form.show的问题 - VB / 非技术类

为什么我用form.show和form.hide多次连接了两个窗口只能互换链接两次啊?
代码看看
照道理form.show 没次数限定的吧

我也快疯了。
楼主知道怎么发贴么?

引用
我也快疯了。
楼主知道怎么发贴么?
楼主也 ......

vb - VB / 非技术类

怎么把已知的数据保存成xml文件,现在已知的数据是
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
 xmlns:o=& ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号