MASM 14:在 winextra.inc 中预期不变

MASM 14: constant expected in winextra.inc

网上有意见说这些错误是 MSVC 2019 中的一个问题。但是除了建议安装另一个版本的 MASM 之外,我没有找到解决这个问题的方法。

winextra.inc 来自包括:

; ...
STD_ALERT struct
    alrt_timestamp dd ?
    alrt_eventname WCHAR  [EVLEN + 1] dup(?)  ; Here is A2026
    alrt_servicename WCHAR [SNLEN + 1] dup(?) ; Here is A2026
STD_ALERT ends
; ...

那么如何在不重新安装MASM到另一个版本的情况下解决winextra中的错误A2026?

旧版本的 MASM 接受了语法。 较新的版本需要用圆括号替换方括号。

; ...
STD_ALERT struct
    alrt_timestamp dd ?
    alrt_eventname WCHAR  (EVLEN + 1) dup(?)  ; Corrected
    alrt_servicename WCHAR (SNLEN + 1) dup(?) ; Corrected
STD_ALERT ends
; ...