Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <vector>
- #include <windows.h>
- #include <TlHelp32.h>
- using namespace std;
- DWORD GetProcessIdByName(const string&);
- DWORD_PTR GetModule(const string&);
- int main()
- {
- DWORD pId
- {
- GetProcessIdByName("KillingFloor.exe")
- };
- HANDLE hProc
- {
- OpenProcess(PROCESS_ALL_ACCESS, FALSE, pId)
- };
- vector<string> strVec
- {
- "Nickname1", "Nickname2",
- "Nickname3", "Nickname4",
- "Nickname5", "Nickname6",
- };
- HWND hwnd
- {
- FindWindowA(NULL, "Killing Floor")
- };
- while(true)
- {
- for (const auto& i : strVec)
- {
- WriteProcessMemory
- (
- hProc,
- (LPVOID)(GetModule("steamclient.dll") + 0x681F50),
- i.c_str(),
- i.size(),
- NULL
- );
- SendMessage(hwnd, WM_KEYUP, 0x50, NULL);
- SendMessage(hwnd, WM_KEYDOWN, 0x50, NULL);
- Sleep(1000);
- }
- }
- CloseHandle(hProc);
- system("pause");
- }
- DWORD GetProcessIdByName(const string& processName)
- {
- DWORD pid = 0;
- // Create toolhelp snapshot
- HANDLE snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
- PROCESSENTRY32 process;
- ZeroMemory(&process, sizeof(process));
- process.dwSize = sizeof(process);
- // Walkthrough all processes
- if (Process32First(snapshot, &process))
- {
- do
- {
- // Compare process.szExeFile based on format of name, i.e., trim file path
- // trim .exe if necessary, etc
- if (processName == static_cast<std::string>(process.szExeFile))
- {
- pid = process.th32ProcessID;
- break;
- }
- } while (Process32Next(snapshot, &process));
- }
- CloseHandle(snapshot);
- return pid;
- }
- DWORD_PTR GetModule(const string& lpModuleName)
- {
- MODULEENTRY32 lpModuleEntry = { 0 };
- HANDLE hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE | TH32CS_SNAPMODULE32, GetProcessIdByName("KillingFloor.exe"));
- if (!hSnapShot)
- return NULL;
- lpModuleEntry.dwSize = sizeof(lpModuleEntry);
- BOOL bModule = Module32First(hSnapShot, &lpModuleEntry);
- while (bModule)
- {
- if (lpModuleName == static_cast<std::string>(lpModuleEntry.szModule))
- {
- CloseHandle(hSnapShot);
- return (DWORD_PTR)lpModuleEntry.modBaseAddr;
- }
- bModule = Module32Next(hSnapShot, &lpModuleEntry);
- }
- CloseHandle(hSnapShot);
- return NULL;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement