Я пытаюсь запустить следующий код в Visual Studio 2015, в который встроен MASM. Я пытаюсь связать файлы библиотеки Irvine с программой. Тем не менее, я получаю как 49 из следующих ошибок.Visual Studio include irvine32.inc производит ошибку SmallWin.inc
A2C \Irvine\SmallWin.inc(11)or specified size
A2C \Irvine\SmallWin.inc(12)or specified size
A2C \Irvine\SmallWin.inc(299)for specified size
Вот мой код
ExitProcess PROTO
includelib C:\Irvine\Kernel32.Lib
includelib C:\Irvine\User32.Lib
includelib C:\Irvine\Irvine32.lib
include Irvine32.inc
.data
str1 BYTE "This line is displayed in color",0
.code
main PROC
mov eax, black + (white * 16) ; black on white backgrouund
mov ecx,4 ; loop counter
L1: call SetTextColor
mov edx,OFFSET str1
call WriteString
call Crlf
add eax,2 ; add 2 to foreground color
loop L1
call ExitProcess
main ENDP
END
Почему библиотеки Ирвин не связывая?
Какое издание библиотеки Irvine32 у вас есть? (т. е. какое издание книги Кипа Ирвина это?) Кроме того, вы можете вставить фрагмент того, что находится на линиях ошибок и вокруг строк в SmallWin.inc. Похоже, что Visual Studio использует 64-битный MASM для сборки этого 32-битного кода, но это всего лишь предположение. – byteptr
Вы правы, я пытался использовать x64 MASM для сборки 32-битного кода. – ISM34