Не удается найти проблему, из-за которой вывод выдает неразрешенную ошибку

#c

Вопрос:

Я использую код из своего старого проекта и хотел использовать этот код в одном из своих новых проектов. Поэтому я буквально скопировал и вставил тот же код в свое новое проектное решение. Он безупречно работает в старом источнике, но в новом он выдает мне следующий код ошибки:

 Severity Code Description Project File Line Suppression state Error LNK2019 Reference to unresolved external symbol ""public: void __cdecl Hookxyz::Enable(void)" (?Enable@Hookxyz@@QEAAXXZ)" in function ""public: bool __cdecl rD3D11::HookD3D(void)" (?HookD3D@rD3D11@@QEAA_NXZ)". MyProject D:MyProjectMyProjectrD3D11.obj 1   

На случай, если вам понадобится больше кода, чтобы помочь мне, вот как выглядит моя структура:

крюк.h:

 #pragma once #include lt;Windows.hgt; class Hookxyz { public:   BYTE* src{ nullptr };  BYTE originalBytes[30]{ 0 };  BYTE* dst{ nullptr };   uintptr_t len{ 0 };  uintptr_t* pTrampoline{ 0 };   bool bEnabled{ false };  void Enable(); };  

hook.cpp:

 #include "hook.h" void Hookxyz::Enable() {  if (!bEnabled)  {  memcpy(originalBytes, src, len);  * (uintptr_t*)pTrampoline = (uintptr_t)TrampHook64(src, dst, len);  bEnabled = true;  } }  

rD3D11.h:

 #pragma once #include "hook.h" class rD3D11 { public:  Hookxyz presentHook; };  

D3D11.cpp:

 #include "hook.h" #include "rD3D11.h" bool rD3D11::HookD3D() {  presentHook.Enable();  return true; }  

В чем именно заключается проблема? Как я могу решить эту проблему?

Комментарии:

1. Скорее hook.cpp всего, он не был скомпилирован и не является частью вашего проекта Visual Studio.

2. спасибо вам за ваш ответ, я дважды проверил его, да, это часть проекта, и он компилируется.

3. У вас есть два проекта?

4. Поскольку код работает в вашем старом проекте, сам код не является проблемой и поэтому не имеет значения. Проблема в настройках вашего проекта, но мы их не видим.

5. «да, это часть проекта, и он компилируется». Не могли бы вы добавить основу этого вывода к вопросу? Копирование (в виде текста) команды, используемой (системой сборки) для связывания проекта, является одним из способов поддержать этот вывод в вопросе.