私はこの迷惑なエラーを抱えており、問題の解決方法を知らない。私はVisual Studio 2015、コミュニティ版を使用しています。どのようにLNK2019を解決するための任意のアイデア - 未解決の外部シンボル、エラー?
私はGTA5.exeに接続し、アドレスを使用して正常性を変更するC/C++コンソールアプリケーションを作成しています。
これは誤りである:ここでは
Error LNK2019 unresolved external symbol _main referenced in function "int __cdecl invoke_main(void)" ([email protected]@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()' ')('メインint型でなければなりませんによります。 'C++ 'は大文字と小文字を区別します。 – drescherjm
さて、私はそれを試してみましょう。ありがとうございました! – ThatUnknownGuy
main()は大文字と小文字を区別しています。ありがとう。 – ThatUnknownGuy