⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cioinit.asm

📁 一个采用汇编线程池实现的Socket完成端口编程例程。
💻 ASM
字号:
    ;初始化Socket
    IOSKT_InitNetWork PROC uses edi lpTHIS:DWORD 
       LOCAL @stWsadata:WSADATA                                     ;版本变量
       LOCAL @dwVerion :DWORD
       LOCAL @dwReturn :DWORD
    
       mov   @dwReturn,FALSE
       SetObject edi,CLS_IOSKT
       invoke RtlZeroMemory,addr @stWsadata,sizeof @stWsadata       ;初始化Socket结构体
       mov    @dwVerion,202h                                        ;启动Socket2.0
       invoke WSAStartup,@dwVerion,addr @stWsadata                  ;Socket初始化
       .if eax!=0
          invoke IOSKT_SetLastErr,lpTHIS,CTEXT("WSAStartup 失败")
          jmp    @F
       .else
          .if @stWsadata.wVersion != 202h
             invoke IOSKT_SetLastErr,lpTHIS,CTEXT("Socket不支持2.0 失败")
             jmp    @F
          .else
             mov   @dwReturn,TRUE
          .endif
       .endif
    @@:       
       ReleaseObject edi
       mov    eax,@dwReturn
       ret
    IOSKT_InitNetWork ENDP
    
    ;清理Socket
    IOSKT_UnInitNetWork PROC uses edi lpTHIS:DWORD
       SetObject edi,CLS_IOSKT
       invoke WSACleanup
       ReleaseObject edi
       ret
    IOSKT_UnInitNetWork ENDP

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -