нужно обьединить два исходника на masm, но когда я включаю модули из второй в первую, вылезают ошибки в модуле windows.inc, огромная куча, вида:
syntax error: in structure
structure improperly initialized
symbol type conflict: bool
symbol redefenition: hinst
если его закомментить то ошибки исчезают
и в user32.inc ошибка symbol redefinition : wsprintfA
т.е. как я понял какие-то структуры из windows.inc как-то перекрываются со структурами из других модулей?
как это можно решить, можно ли вторую программу как-нибудь отдельным модулем c подпрограммой сделать, а из первой её вызывать?
Код:
;модули первой программы
EXTERN shutdown@8:NEAR
EXTERN recv@16:NEAR
EXTERN send@16:NEAR
EXTERN accept@12:NEAR
EXTERN listen@8:NEAR
EXTERN bind@12:NEAR
EXTERN closesocket@4:NEAR
EXTERN socket@12:NEAR
EXTERN CharToOemA@8:NEAR
EXTERN WSAStartup@8:NEAR
EXTERN wsprintfA:NEAR
EXTERN GetLastError@0:NEAR
EXTERN ExitProcess@4:NEAR
EXTERN lstrlenA@4:NEAR
EXTERN WriteConsoleA@20:NEAR
EXTERN GetStdHandle@4:NEAR
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\ws2_32.lib
includelib \masm32\lib\winmm.lib
include \masm32\include\kernel32.inc
include \masm32\include\winmm.inc
;модули второй программы
include \masm32\include\windows.inc
include \masm32\include\masm32.inc
include \masm32\include\user32.inc
include \masm32\include\wsock32.inc
includelib \masm32\Lib\masm32.lib
includelib \masm32\Lib\wsock32.lib