Using CSocket in _USRDLL
Sean Stephens -- seans@anasazi.com Wednesday, April 17, 1996 Environment: Win95, VC++ 4.1, VB 4.0 I have a USRDLL that maintains a socket connection on behalf of an application. It calls the various MFC CSocket functions to get started when the user calls DLLFuncConnect(...). This works fine when the DLL is called from a VC++ application. However when the first DLL function is called from a VB application it ASSERTS. The call stack ends up like this: AfxGetInstanceHandle AfxRegisterWndClass CAsyncSocket::AttachHandle CAsyncSocket::Socket CAsyncSocket::Create AfxGetInstanceHandle ASSERTS because the variable afxCurrentInstanceHandle is NULL. It would seem that the problem is trying to create the hidden window to receive socket notification messages. Does anyone know of a problem using the CSocket classes in a DLL that is going to be called by VB? Appreciate your help, Sean Stephens seans@anasazi.com
Grant Shirreffs Great Elk -- Grant.S@greatelk.co.nz Monday, April 22, 1996 Do you have a CWinApp object? If not, under Win32 the DLL will load OK, but the MFC initialisation code will not get called so none of the global handles such as those returned by AfxGetInstanceHandle and AfxGetResourceHandle will be set. ---------- From: owner-mfc-l[SMTP:owner-mfc-l@netcom.com] Sent: Wednesday, 17 April 1996 13:05 To: mfc-l Subject: Using CSocket in _USRDLL Environment: Win95, VC++ 4.1, VB 4.0 I have a USRDLL that maintains a socket connection on behalf of an application. It calls the various MFC CSocket functions to get started when the user calls DLLFuncConnect(...). This works fine when the DLL is called from a VC++ application. However when the first DLL function is called from a VB application it ASSERTS. The call stack ends up like this: AfxGetInstanceHandle AfxRegisterWndClass CAsyncSocket::AttachHandle CAsyncSocket::Socket CAsyncSocket::Create AfxGetInstanceHandle ASSERTS because the variable afxCurrentInstanceHandle is NULL. It would seem that the problem is trying to create the hidden window to receive socket notification messages. Does anyone know of a problem using the CSocket classes in a DLL that is going to be called by VB? Appreciate your help, Sean Stephens seans@anasazi.com
| Вернуться в корень Архива |