あと、winmain.cpp 内で
コマンドラインの配列として確保されたメモリを解放する際に

::GlobalFree(mzc_wargv);

ってやてるけど、メモリ確保と解放に使う関数のミスマッチの指摘もでてる。

::LocalFree(mzc_wargv);

が正しい。

MSDN でもきちんと書いてる。

The calling application must free the memory used by the argument list when it is no longer needed.
To free the memory, use a single call to the LocalFree function.