Да уж спасибо на добром слове 8].
Извините сэр! Но или я немного неточно выразился или вы меня неправильно поняли

.
> Значит, код кривой, раз нельзя. По-нормальному - можно, и у меня с этим нигогда проблем не
> возникало. Эта ошибка, которую ты не исправил, а всего лишь сделал менее заметной,
> обязательно где-нибудь вылезет и всё испортит.
Я пытался запустить все классы с ивентами (и оооочень навороченые!)
внутри процедур инициализации самого контрола:
(9 классов с взаимосвязями ...)
Private Sub UserControl_Initialize()
'-----------------------------------------------------
тут пускаем ...
'-----------------------------------------------------
End Sub
Private Sub UserControl_Terminate()
'-----------------------------------------------------
тут убиваем ...
'-----------------------------------------------------
End Sub
Что интересно когда я перенёс код инициализации во внешний класс,
сначала запускаю его, а потом процедуры инициализации классов
(и то и то в принципе одно и то же, не так ли ?):
Option Explicit
Private WithEvents cClient As cls_Client 'Client class
Private WithEvents cServer As cls_Server 'Server class
Private cEndPoint As cls_EndPoint 'End point information class
Private WithEvents cPing As cls_Ping 'ICMP Ping class
...
Private ClientSocket As Long 'Client socket
Private ServerSocket As Long 'Server socket
...
Private Sub Class_Initialize()
Set cClient = New cls_Client
Set cServer = New cls_Server
Set cEndPoint = New cls_EndPoint
Set cPing = New cls_Ping
...
End Sub
Private Sub Class_Terminate()
Set cClient = Nothing
Set cServer = Nothing
Set cEndPoint = Nothing
Set cPing = Nothing
...
End Sub
То всё работает ...
И при компаёле и так ...
Возможно что Вы правы ... вот допишу прогу и посмотрю

... Dpkjvfnm dc`xnj itdtkbnmcz, f tckb yt itdtkbnmcz hfcitdtkbnm b dpkjvfnm !!! ...