プログラムをビルドするとき、Unicode/MBCS、マルチ/シングル スレッド、およびその他のさまざまなものを設定するコンパイラ フラグがあります。あるソースを 1 セットのフラグでコンパイルし、別のソースを別のフラグでコンパイルすると、そのようなリンカ エラーが発生することがよくあります。
独自のライブラリを含め、すべてのソースが同じフラグを使用していることを確認してください。
あなたが持っている特定のエラーは、リンカーがライブラリLIBCMT.libからバイナリwwincrt0.objをインクルードしていることを示しています。wincrt0.obj は関数 wWinMain() を参照していますが、リンカはその場所を認識していません。
LIBCMT は LIBC のマルチスレッド バージョンです。そのうちの 1 つにリンクしますが、両方にはリンクしないでください。
wwincrt0 は、コードを起動する CRT (C ランタイム) スタートアップ コードのワイド (UNICODE) バージョンです。
WinMain() は Windows のメイン関数で、wWinMain() は WinMain() のワイド (UNICODE) バージョンです。
コードの一部はコンパイラ フラグ /MT でコンパイルされ、一部は別のフラグ (/MTd、/MD、/MDd、/LD、または /LDd) でコンパイルされていると思います。
私の 2 番目の問題は、/DUNICODE でコンパイルされたものと /DMBCS でコンパイルされたものがあるということです。