How to deal with the error "conflicting parameter definition"?

Hi, I am new to Win32asm programming. Can anyone please give me advices dealing with this problem.
A error had occured when I compiled Iczelion's Win32 Assembly Tutorial part 24.

==>c:\MASM32\tut24\mousehook.asm(12) : error A2111: conflicting
parameter definition

I found out that the parameter definition used in windows.inc is different form Iczelion's Tut24.

windows.inc==>
wsprintfA PROTO C :DWORD,:VARARG
wsprintf equ <wsprintfA>
...

Iczelion's Win32 Assembly Tutorial part 24==>
wsprintfA proto C :DWORD,:DWORD,:VARARG
wsprintf TEXTEQU <wsprintfA>

So I had to modify windows.inc in order to successfully compile the mousehook.asm.
Is there a method which can solve this problem without modifying the windows.inc file?
In case, I don't have to modify windows.inc each time while program's API definition contains different parameters than claiming in windows.inc.

API reference==>
int wsprintf(

LPTSTR lpOut, // address of buffer for output
LPCTSTR lpFmt // address of format-control string
... // optional arguments
);
Parameters

lpOut

Points to a buffer to receive the formatted output.

lpFmt

Points to a null-terminated string that contains the format-control specifications. In addition to ordinary ASCII characters, a format specification for each argument appears in this string. For more information about the format specification, see the Remarks section.

...

Specifies one or more optional arguments. The number and type of argument parameters depend on the corresponding format-control specifications in the lpFmt parameter.
Posted on 2002-05-26 03:47:11 by ssa
Both prototypes work. It should be :DWORD, :DWORD, :VARARG because the first two parameters are required but the other would work too.
I think the error is due to the windows.inc version. Earlier versions didn't include the wsprintf prototype. Just remove the one from the tutorial and it will work.

Thomas
Posted on 2002-05-26 03:54:52 by Thomas
Thank you, Thomas.
You are right.
the error was due to the earlier windows.inc version that didn't include the wsprintf prototype.
After removing the one from the tutorial, it worked.
Posted on 2002-05-29 17:41:24 by ssa