Fix World.exe crash problem in 6.2 DR1
Anyone know the code Fathernitwit modified just after he released the first binarys for 6.2 DR1? I think the change he made was actually in EMuShareMem but since I am really new to the EQEmu code, I dont see exactly where the change was and I would like to make other modifications for my server, but first I need to be able to regenerate my world.exe so it won't crash like it first did last week.
|
I am having a similiar problem, with compiled binaries using Visual Studio 2003. I am at work now, so I am unable to recall the exact error however it was along the lines of an attach() error, regarding a guildlist.
I thought it may be the database to blame, however the binaries downloaded from sourcforge do not generate this message. |
I have the exact same error and am using msvs 2003 .net
[Status] CURRENT_WORLD_VERSION:EQEMu 0.6.2-DR1 [Status] Loading opcodes.. [Error] LoadEMuShareMemDLL::Load() failed to attach GuildList.GetGuild Unable to load EMuShareMem for opcodes. [Error] Loading opcodes failed. I cant live like this! My world.exe works fine in palce of the binary, but my eqsharemem.dll fubars. |
Yeah thats the error Fatherntwit patched the 6.2 released binaries to fix. Its the same one I got now. I'm was looking at it last night but the wife dragged me out for drinks.
|
You're all going to smack yourselves. The error says it all.
"[Error] LoadEMuShareMemDLL::Load() failed to attach GuildList.GetGuild" Add GuildList.cpp and GuildList.h to your EMuShareMem project, then compile. :) |
/me smacks self
Thanks CaveDude |
I wish I could smack myself, but the exact error message from world.exe I am talking about, for me anyway, is:
[Error] Function Attach Error: Error #127 [Error] LoadEMuShareMemDLL::Load() failed to attach to a function. Unable to load EMuShareMem for opcodes. Obviously, it's a slightly different error message in that it doesn't specify which of the main function handlers it couldn't establish a pointer for. EDIT: I will try that GuildList.cpp and .h addition to see if it is missing anyway, just in case it really is the same message, but the error message text has changed or something. |
While my EMuShareMem project was missing both GuildList.cpp and GuildList.h, I still get the exact error message I posted above about not being able to "attach to a function". The problem is I don't know which function (in the code looks like there is a possibility of atleast 25 to 30 function handlers...) and my debugger won't stop at any breakpoints I set, which I am guessing is because the source code files are in a non-DOS format? Anyway, would be really cool if someone knows what I need to add. Meanwhile, I'm going to focus on trying to figure out why breakpoints won't work in the project.
|
After looking through GuildList.cpp, I found I had to "extern" the function GetMaxGuildID() for WIN32 compiles. It was defined for a non-WIN32, but not for Windows Servers. I also had to remove a stray semi-colon at then end of DLLLoadGuildList(). Apparently this misplaced semi-colon was causing the AddGuild function to not load from the EmuShareMem.dll during runtime.
Now, if I could just figure out why I can't use the debugger to step into the project to make finding bugs like a BILLION times easier or to get it to stop at breakpoints. Trying to debug the source without DEBUGGING is a severe challenge. If anyone has come across this problem, I'd love to know the solution! I'm in the middle of resaving all the source code files to make sure the files use the Windows format LF & CR. Its been my experience that when I can't debug source code its because the source code was last saved in unix which uses a different file format than Windows and that gums up the debugger. I am using Visual Studio .NET 2003 on Windows XP and Windows 2000 Workstation. Anyway, now to try and figure out why Zoneperl.exe is tossing out run time errors... (debugging would speed this up A LOT) |
Quote:
J |
All times are GMT -4. The time now is 12:21 AM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.