如何在dll中创建套接字?

stevens_wu 2006-08-22 08:53:18
查阅了相关资料后得知使用dll时避免在DllMain中创建网络套接字,但是我又需要在执行到dll时自动完成套接字的操作,请教有什么好的方法可以做到?
...全文
207 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
softrain 2006-08-22
  • 打赏
  • 举报
回复
在DLL_PROCESS_ATTACH时就可以创建,但是那时网络环境可能还没来得及初始化.如果是显式load的,可以在load这个DLL之前初始化网络环境.
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
g_socket = socket(...);
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
g_hInst = (HMODULE)hModule;
}
return TRUE;
}
stevens_wu 2006-08-22
  • 打赏
  • 举报
回复
那么我应该将bind等操作的代码放置在哪里呢?

18,357

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧