gpt4 book ai didi

c++ - 知道如何解决 LNK2019 - 未解析的外部符号,错误吗?

转载 作者:行者123 更新时间:2023-11-28 01:54:14 24 4
gpt4 key购买 nike

我有这个恼人的错误,不知道如何解决这个问题;我使用的是 Visual Studio 2015 社区版。

我正在制作一个附加到 GTA5.exe 并使用地址修改健康状况的 C/C++ 控制台应用程序。

这是错误:

Error LNK2019 unresolved external symbol _main referenced in function "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) GTAConsole

截图如下: http://prntscr.com/dzbpsa.png

GTAConsole.cpp代码:

#include "stdafx.h" // Precompiled header

#include <Windows.h> // Allows window editing; setting text, etc
#include <iostream>
#include <TlHelp32.h>
#include <conio.h>

using namespace std; // Allows use of std::

__int64 GetModuleBaseAddress(LPCWSTR szProcessName, LPCWSTR szModuleName)
{
HANDLE hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
PROCESSENTRY32 pe32;

if (hSnap == INVALID_HANDLE_VALUE)
{
return 0;
}
pe32.dwSize = sizeof(PROCESSENTRY32);
if (Process32First(hSnap, &pe32) == 0)
{
CloseHandle(hSnap);
return 0;
}

do
{
if (lstrcmp(pe32.szExeFile, szProcessName) == 0)
{
int PID;
PID = pe32.th32ProcessID;

HANDLE hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, PID);
MODULEENTRY32 xModule;

if (hSnap == INVALID_HANDLE_VALUE)
{
return 0;
}
xModule.dwSize = sizeof(MODULEENTRY32);
if (Module32First(hSnap, &xModule) == 0)
{
CloseHandle(hSnap);
return 0;
}

do
{
if (lstrcmp(xModule.szModule, szModuleName) == 0)
{
CloseHandle(hSnap);
return (__int64)xModule.modBaseAddr;
}
} while (Module32Next(hSnap, &xModule));
CloseHandle(hSnap);
return 0;
}
} while (Process32Next(hSnap, &pe32));
CloseHandle(hSnap);
return 0;
}

int Main()
{

wchar_t* WindowName = (L"Grand Theft Auto V");
wchar_t* GameTitle = (L"GTA5.exe");

HWND WindowHandle = FindWindow(NULL, WindowName);
__int64 BaseAddress = GetModuleBaseAddress(GameTitle, GameTitle);

DWORD ProcessID;
GetWindowThreadProcessId(WindowHandle, &ProcessID);

HANDLE pHandle = OpenProcess(PROCESS_ALL_ACCESS, 0, ProcessID);

std::cout << "[sucess]: GTAV.exe has been found!" << std::endl;

for (;;)
{
if (GetAsyncKeyState(VK_NUMPAD1))
{
Sleep(250);

float Health = 200;
__int64 pPlayerInformationAddress = 0;

DWORD SocialClubPlayerInformation = 0x01ED6D88;
DWORD HealthOffset = 0x280;

ReadProcessMemory(pHandle, (void*)(BaseAddress + SocialClubPlayerInformation), &pPlayerInformationAddress, sizeof(pPlayerInformationAddress), NULL);
ReadProcessMemory(pHandle, (void*)(pPlayerInformationAddress + HealthOffset), &Health, sizeof(Health), NULL);

std::cout << Health << std::endl;
}
}

Sleep(1);
}

如果有人能提供帮助,那就太棒了!

最佳答案

更改行 int Main()通过 main()

关于c++ - 知道如何解决 LNK2019 - 未解析的外部符号,错误吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41811390/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com