main.obj : error LNK2005: "wchar_t * __cdecl StrAdd(wchar_t *,wchar_t *)" (?StrAdd@@YAPA_WPA_W0@Z) 已经在 inject.obj 中定义
main.obj : error LNK2005: "wchar_t * __cdecl StrCpy(wchar_t *,wchar_t *)" (?StrCpy@@YAPA_WPA_W0@Z) 已经在 inject.obj 中定义
main.obj : error LNK2005: "wchar_t * ImeFileName" (?ImeFileName@@3PA_WA) 已经在 inject.obj 中定义
main.obj : error LNK2005: "wchar_t * pSysDir" (?pSysDir@@3PA_WA) 已经在 inject.obj 中定义
在main.cpp 里面调用 inject.cppmain.cpp 和 inject.cpp 都有包含 inject.h
main.obj : error LNK2005: "wchar_t * __cdecl StrCpy(wchar_t *,wchar_t *)" (?StrCpy@@YAPA_WPA_W0@Z) 已经在 inject.obj 中定义
main.obj : error LNK2005: "wchar_t * ImeFileName" (?ImeFileName@@3PA_WA) 已经在 inject.obj 中定义
main.obj : error LNK2005: "wchar_t * pSysDir" (?pSysDir@@3PA_WA) 已经在 inject.obj 中定义
在main.cpp 里面调用 inject.cppmain.cpp 和 inject.cpp 都有包含 inject.h
比较简单通用的解决方法是在头文件中#pragma once,然后所有include写到cpp中去
有啊#ifndef inject
#define inject
#pragma once....
$endif
这个好像没有关系吧
#ifndef _h_h
#define _h_h
#endif了。
如果按你描述是不应该出问题的
你有没有把这些文件添加进工程
是的,因为功能是一样的。就像你if(true){if(true)}