Cease fire on LAN

ImageNeed any help? Do you have a problem? Ask us! We will help you!
User avatar
Traumwelt
Posts: 7
Joined: 04 Apr 2024, 17:57

Re: Cease fire on LAN

Post by Traumwelt »

First the error message GameHelper.dll appears, then Exception error.

The settings cannot be saved, when I restart the Lauchner, the hooks are there again.

Every time I start the 1.5 launcher, the administrator window also appears.
00.jpg
00.jpg (102.37 KiB) Viewed 764 times
Edit:
I will try again later with moving the DirectX file...

User avatar
Dr.MonaLisa
High Representative
Posts: 8714
Joined: 17 Jun 2010, 11:21
Location: Poland
Has thanked: 49 times
Been thanked: 109 times

Re: Cease fire on LAN

Post by Dr.MonaLisa »

It looks like the Launcher is trying to generate some files, and it asks for the administration permissions to be able to write in the game folder. Do you actually type the admin password there, or refuse it?
Best regards,
Dr.MonaLisa
Ministry of Game Affairs
Department of Control and Complains
User avatar
Traumwelt
Posts: 7
Joined: 04 Apr 2024, 17:57

Re: Cease fire on LAN

Post by Traumwelt »

I press "Current user" without admin password...
This is just an example picture from the internet ;)
User avatar
Dr.MonaLisa
High Representative
Posts: 8714
Joined: 17 Jun 2010, 11:21
Location: Poland
Has thanked: 49 times
Been thanked: 109 times

Re: Cease fire on LAN

Post by Dr.MonaLisa »

On Windows XP you're supposed to start the launcher with administrative permissions the first time after installation. So if you haven't done that, it's required to do.

Have you tried with moving out DLL or disabling Directx 9 in Up1.5 Settings?
Best regards,
Dr.MonaLisa
Ministry of Game Affairs
Department of Control and Complains
User avatar
Traumwelt
Posts: 7
Joined: 04 Apr 2024, 17:57

Re: Cease fire on LAN

Post by Traumwelt »

I have tried everything possible, no chance to get the game running with the patch.
I think it's because of the GOG version.
I will buy an original CD / DVD version and test it then.
User avatar
Dr.MonaLisa
High Representative
Posts: 8714
Joined: 17 Jun 2010, 11:21
Location: Poland
Has thanked: 49 times
Been thanked: 109 times

Re: Cease fire on LAN

Post by Dr.MonaLisa »

I don't think it makes any difference which version it is though... WinXP has always acted weirdly, but if you made a test on a clean windows xp installation in the virtual machine - it would probably work.
Best regards,
Dr.MonaLisa
Ministry of Game Affairs
Department of Control and Complains
User avatar
Dr.MonaLisa
High Representative
Posts: 8714
Joined: 17 Jun 2010, 11:21
Location: Poland
Has thanked: 49 times
Been thanked: 109 times

Re: Cease fire on LAN

Post by Dr.MonaLisa »

So probably this function fails:

Code: Select all

std::wstring GetProcessPathByPIDWs(DWORD PID)
{
	ErrorCode14J_FailureStep = 5;
	wstring ProcessPathToReturn = L"";
	HANDLE Handle = OpenProcess(
		PROCESS_QUERY_INFORMATION | PROCESS_VM_READ,
		FALSE,
		PID /* This is the PID, you can find one from windows task manager */
	);
	if (Handle)
	{
		ErrorCode14J_FailureStep = 6;
		wchar_t Buffer[MAX_PATH];

		//Fucking Winddows XP
		HANDLE  hReturnHandle = NULL;
		HMODULE hNtDllModule = NULL;

		typedef DWORD(WINAPI* MonaGetModuleFileNameExW)(
			HANDLE  hProcess,
			HMODULE hModule,
			LPWSTR  lpFilename,
			DWORD   nSize
			);
		MonaGetModuleFileNameExW funcGetModuleFileNameExW = NULL;
		bool LoadedK32GetModuleFileNameExW = false;
		if((hNtDllModule = GetModuleHandleW(L"kernel32.dll"))) {
			ErrorCode14J_FailureStep = 7;
			if (funcGetModuleFileNameExW = (MonaGetModuleFileNameExW)GetProcAddress(hNtDllModule, "K32GetModuleFileNameExW")) {
				LoadedK32GetModuleFileNameExW = true;
				ErrorCode14J_FailureStep = 8;
			}
		}
		if (!LoadedK32GetModuleFileNameExW) {
			ErrorCode14J_FailureStep = 9;
			if ((hNtDllModule = GetModuleHandleW(L"Psapi.dll"))) {
				ErrorCode14J_FailureStep = 10;
				if (funcGetModuleFileNameExW = (MonaGetModuleFileNameExW)GetProcAddress(hNtDllModule, "GetModuleFileNameExW")) {
					LoadedK32GetModuleFileNameExW = true;
					ErrorCode14J_FailureStep = 11;
				}
			}
		}

		if (LoadedK32GetModuleFileNameExW) {
			ErrorCode14J_FailureStep = 12;
			if (funcGetModuleFileNameExW(Handle, 0, Buffer, MAX_PATH))
			//if (GetModuleFileNameExW(Handle, 0, Buffer, MAX_PATH))
			{
				ErrorCode14J_FailureStep = 13;
				// At this point, buffer contains the full path to the executable
				ProcessPathToReturn = Buffer;

			}
			else
			{
				ErrorCode14J_FailureStep = 14;
				// You better call GetLastError() here
			}
		}
		CloseHandle(Handle);
	}
	return ProcessPathToReturn;
}
It seems like in your Windows XP, there's a problem using "GetModuleFileNameExW" function from Psapi.dll. Quite strange because all functions were designed especially to work for new Windows versions, and the XP (before finally decided to drop the support).
Best regards,
Dr.MonaLisa
Ministry of Game Affairs
Department of Control and Complains
Post Reply

Return to “Help, Questions & Problems. Empire Earth II Support.”