Windows套接字asm:上下文堆栈为空

问题描述:

您好,我在编译NASM代码时遇到了结构问题。Windows套接字asm:上下文堆栈为空

这是我的结构定义和声明:

struc wsa_data_struct 
    .wVersion resw 1 
    .wHighVersion resw 1 
    .szDescription resb WSADESCRIPTION_LEN 
    .szSystemStatus resb WSASYS_STATUS_LEN 
    .iMaxSckets resw 1 
    .ImaxUdpDg resw 1 
    .lpVendorInfo resb 1 
    .size 
endstruc 

wsa_dat: 
    istruc 
     at wsa_data_struct.wVersion, dw 0 
     at wsa_data_struct.wHighVersion, dw 0 
     at wsa_data_struct.szDescription, db 0 
     at wsa_data_struct.szSystemStatus, db 0 
     at wsa_data_struct.iMaxSckets, dw 0 
     at wsa_data_struct.ImaxUdpDg, dw 0 
     at wsa_data_struct.lpVendorInfo, db 0 
    iend 

,当我尝试编译我的代码,这个错误弹出:

error: (at:1) `%$strucname': context stack is empty 
error: (at:1) `%$strucstart': context stack is empty 
error: (at:1) `%$strucname': context stack is empty 
error: (at:1) `%$strucstart': context stack is empty 
error: (at:1) `%$strucname': context stack is empty 
error: (at:1) `%$strucstart': context stack is empty 
. 
. 
. 

这只是strucuture的声明,它的第一线继续为每一行

istruc需要结构的名称:

istruc wsa_data_struct 

参见:http://www.nasm.us/doc/nasmdoc4.html#section-4.12.11

BTW:.size需要一个像类型resd 1

+0

Thansk现在工作! – user3074166