Нужен кусок кода перед этим: возможно, ошибка лезет оттуда. Вот такой код — компилируется: Код (Text): .386 .model flat, stdcall LONG typedef SDWORD ULONG_PTR typedef DWORD MOUSEINPUT struct _dx LONG ? _dy LONG ? mouseData DWORD ? dwFlags DWORD ? time DWORD ? dwExtraInfo ULONG_PTR ? MOUSEINPUT ends KEYBDINPUT struct wVk WORD ? wScan WORD ? dwFlags DWORD ? time DWORD ? dwExtraInfo ULONG_PTR ? KEYBDINPUT ends HARDWAREINPUT struct uMsg DWORD ? wParamL WORD ? wParamH WORD ? HARDWAREINPUT ends INPUT struct _type DWORD ? union mi MOUSEINPUT <> ki KEYBDINPUT <> hi HARDWAREINPUT <> ends INPUT ends .data? inp INPUT <> end
gale1238, Я привёл файл целиком, если к нему чего доцеплять, могут быть конфликты. windows.inc из MASM32 v10r в строке 197 уже определяет LONG как DWORD, вроде ничего удивительного. Я закомментировал свой typedef, всё скомпилировалось.