can't see the source, but.....
usually, the first error reported is the first one to fix :P
but - if you say testmsg is good, we have to take your word for it
LPSTR should be defined as a 64-bit pointer (QWORD size) - actually a longlong, i guess
windows.inc should take care of that
maybe the problem is with the label name "CommandLine" (maybe it's used elsewhere)
try changing it to "lpComandLine", "pszCommandLine", or something similar
seems to me that LPSTR should be long
and, if you want a machine-size pointer, use PSTR :P