xyz.libを使用しているプロジェクト "proj1"をコンパイルしているときにエラーが発生しています(これは正常にコンパイルされた別のプロジェクトです)。Visual Studio 2005のC++でリンクエラーが発生する
Error 3 error LNK2019: unresolved external symbol "int __cdecl Vsnprintf16(unsigned short *,unsigned int,unsigned short const *,char *)" ([email protected]@[email protected]) referenced in function "int __cdecl eastl::Vsnprintf(wchar_t *,unsigned int,wchar_t const *,char *)" ([email protected]@@[email protected]) File : xyz.lib(abc.obj)
abc.cppには、関数sprintfが呼び出されています。
abc.hとabc.cppのコードを別のものに移動すると、すでにxyzプロジェクトに存在するdef.hとdef.cppファイルがあると、すべて正常に動作し、リンクエラーは発生しません。どうしてか分かりません。
abc.cppのファイルdef.cppで使用されていたすべてのインクルードを使用しましたが、同じエラーが発生しました。
私はabc.cppからsprintf()呼び出しを削除するときに、すべて正常に動作します。
なぜこのようなことが起こっているのかご迷惑をおかけください。ありがとう
プロジェクトはUNICODEで有効になっていますか? – marcinj
はいユニコードマクロを有効にして無効にしてみましたが、同じエラーです。プロジェクト設定では、文字セットは "Unicode文字セットを使用する"です@marcinj – lsrawat
あなたはこの関数の定義を自分で追加する必要があります。 – marcinj