[DiscordArchive] So in WinMemory.cs I found this:
[DiscordArchive] So in WinMemory.cs I found this:
Archived author: gemini • Posted: 2024-08-11T03:09:02.325000+00:00
Original source
So in WinMemory.cs I found this:
public void RefreshMemoryData(int size)
{
// Reset previous memory data.
Data = null;
while (Data == null)
{
**Console.WriteLine("Refreshing client data...");**
Data = Read(BaseAddress, size);
}
}
and Launcher.cs
// Refresh the client data before patching.
memory.RefreshMemoryData((int)gameAppData.Length);
and
static void WaitForUnpack(ref ProcessInformation processInfo, WinMemory memory, ref MemoryBasicInformation mbi, Stream gameAppData, bool antiCrash)
{
// Wait for client initialization.
var initOffset = memory.Read(mbi.BaseAddress, (int)mbi.RegionSize)?.FindPattern(Patterns.Windows.Init) ?? 0;
while (initOffset == 0)
{
initOffset = memory.Read(mbi.BaseAddress, (int)mbi.RegionSize)?.FindPattern(Patterns.Windows.Init) ?? 0;
Console.WriteLine("Waiting for client initialization...");
}
initOffset += BitConverter.ToUInt32(memory.Read(initOffset + memory.BaseAddress + 2, 4), 0) + 10;
while (memory.Read(initOffset + memory.BaseAddress, 1)?[0] == null ||
memory.Read(initOffset + memory.BaseAddress, 1)?[0] == 0)
memory.Data = memory.Read(mbi.BaseAddress, (int)mbi.RegionSize);
if (antiCrash)
PrepareAntiCrash(memory, ref mbi, ref processInfo);
memory.RefreshMemoryData((int)mbi.RegionSize);
}
and
static void PrepareAntiCrash(WinMemory memory, ref MemoryBasicInformation mbi, ref ProcessInformation processInfo)
{
memory.RefreshMemoryData((int)mbi.RegionSize);
and
So what output is there before the repeating Refreshing message?
Archived author: Alvino • Posted: 2024-08-11T03:14:27.060000+00:00
Original source
Thank you, from what I can see everything looks normal prior. Let me send a photo.
Archived author: gemini • Posted: 2024-08-11T03:17:31.720000+00:00
Original source
I would expect so- but I'm hoping it'll narrow down which of the RefreshMemoryData() calls are returning null
Or more specifically which Read() -> ReadProcessMemory() is returning FALSE, which results in Read() returning null...
![[Image: image.png?ex=690c1406&is=690ac286&hm=8a3...82456dea7&]](https://cdn.discordapp.com/attachments/376074396915335170/1272031900013432923/image.png?ex=690c1406&is=690ac286&hm=8a308a939f3811a562db5cad3dcf54fb88e710d550f1baceb3368a282456dea7&)
Archived author: Alvino • Posted: 2024-08-11T03:20:38.216000+00:00
Original source
Hmm, I can see about running this from visual studio but as far as a output, this is what I have.
![[Image: image.png?ex=690c1406&is=690ac286&hm=8a3...82456dea7&]](https://cdn.discordapp.com/attachments/376074396915335170/1272031900013432923/image.png?ex=690c1406&is=690ac286&hm=8a308a939f3811a562db5cad3dcf54fb88e710d550f1baceb3368a282456dea7&)
Archived author: gemini • Posted: 2024-08-11T03:22:23.905000+00:00
Original source
Yeah, not a lot to go on.... which should make it easier to determine...
Archived author: gemini • Posted: 2024-08-11T03:26:19.583000+00:00
Original source
So
try
{
Console.ForegroundColor = ConsoleColor.White;
**Console.WriteLine("Starting WoW client...");** <---- last console msg before Refreshing msgs
var createSuccess = NativeWindows.CreateProcess(null, $"{appPath} {gameCommandLine}", 0, 0, false, 4, 0, new FileInfo(appPath).DirectoryName,
ref startupInfo, out processInfo);
// On some systems we have to launch the game with the application name used.
if (!createSuccess)
createSuccess = NativeWindows.CreateProcess(appPath, $" {gameCommandLine}", 0, 0, false, 4, 0, null, ref startupInfo, out processInfo);
// Start process with suspend flags.
if (createSuccess)
{
using var gameAppData = new MemoryStream(File.ReadAllBytes(appPath));
var memory = new WinMemory(processInfo, gameAppData.Length);
// Resume the process to initialize it.
NativeWindows.NtResumeProcess(processInfo.ProcessHandle);
MemoryBasicInformation mbi;
// Wait for the memory region to be initialized.
while (NativeWindows.VirtualQueryEx(processInfo.ProcessHandle, memory.BaseAddress, out mbi, MemoryBasicInformation.Size) == 0 ||
mbi.RegionSize <= 0x1000)
{ }
if (mbi.BaseAddress != 0)
{
NativeWindows.NtSuspendProcess(processInfo.ProcessHandle);
byte[] certBundleData = Convert.FromBase64String(Patches.Common.CertBundleData);
// Refresh the client data before patching.
** memory.RefreshMemoryData((int)gameAppData.Length);** <---- looks like first call
Archived author: gemini • Posted: 2024-08-11T03:27:29.633000+00:00
Original source
So first things first- is the client actually running?
![[Image: image.png?ex=690c15c4&is=690ac444&hm=4fa...99fb557a6&]](https://cdn.discordapp.com/attachments/376074396915335170/1272033772488884264/image.png?ex=690c15c4&is=690ac444&hm=4fa0da8bdffd78b711ab59ea956dd647b1e31901bebc9e2217fcfe399fb557a6&)
Archived author: Alvino • Posted: 2024-08-11T03:28:04.650000+00:00
Original source
One thing I do see when I click it, is a WoW executable that has nothing running upstairs.
![[Image: image.png?ex=690c15c4&is=690ac444&hm=4fa...99fb557a6&]](https://cdn.discordapp.com/attachments/376074396915335170/1272033772488884264/image.png?ex=690c15c4&is=690ac444&hm=4fa0da8bdffd78b711ab59ea956dd647b1e31901bebc9e2217fcfe399fb557a6&)
Archived author: tuquin • Posted: 2024-08-11T03:31:35.170000+00:00
Original source
Hi, good time, can someone give me a hand with this please?
CMake Error at cmake/macros/FindGit.cmake:24 (message):
Git was NOT FOUND on your system - did you forget to install a recent version, or setting the path to it?
Observe that for revision hash/date to work you need at least version 1.7
Archived author: gemini • Posted: 2024-08-11T03:46:28.912000+00:00
Original source
Also found this:
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("THIS LAUNCHER IS DISCONTINUED!!! Stop asking for support.");
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("You can find the new supported launcher on https://arctium.io");
Console.WriteLine();
So code I'm looking at may not even correspond to what you are currently using...