Log in

View Full Version : World.exe error 0xc000007b


Linen
01-31-2012, 02:56 AM
Hello, and thanks for reading!

I'm getting an immediate application error when running world.exe. I've compiled the source in accordance with the guides stickied on this forum (and heavy use of the Search function) using Visual Studio 2010 throughout.

I used the ReleaseBots x64 build configuration with MySQL 5.1 x64 and Perl 5.14 x64. (Try as I might, I couldn't get the non-x64 version of all of these to work properly with any version of zlib.) The build succeeded without errors, just the normal warnings. My goal is to have this server function for a LAN.

I'm not sure what to do next. The other programs appear to work as they should (eqlaunch.exe, EQEmuLoginServer.exe).

Thanks in advance for taking the time to look this over. I'm running Windows 7 x64, and using c:\eqemu as my server's directory.

Here is my latest debug log, start.bat, login.ini, and eqemu_config.xml, respectively:

--------------------------------

EQEmu_Debug log:
[01.31. - 00:41:17] Starting Log: logs/eqemu_debug_2064.log
[01.31. - 00:41:17] [LAUNCHER__INIT] Loading server configuration..
[01.31. - 00:41:18] [NET__WORLD] WorldConnection connect: Connecting to the server localhost:9000 failed: TCPConnection::Connect(): connect() failed. Error: 10061
[01.31. - 00:41:18] [LAUNCHER__ERROR] worldserver.Connect() FAILED! Will retry.
[01.31. - 00:41:18] [LAUNCHER__INIT] Starting main loop...

Start.bat:
@echo off
echo Starting login server ...
start EQEmuLoginServer.exe

echo Starting world ...
start world.exe
echo Waiting for the world to finish before starting zone ...
sleep 10

start eqlaunch.exe zone
exit

Login.ini:
[database]
host = localhost
port = 3306
db = PEQLoginDB
user = root
password = xxxxx
subsystem = MySQL

[options]
unregistered_allowed = TRUE
reject_duplicate_servers = FALSE
trace = TRUE
world_trace = FALSE
dump_packets_in = TRUE
dump_packets_out = TRUE
listen_port = 5998
local_network = 192.168.1.103

[security]
plugin = EQEmuAuthCrypto
mode = 5

[Titanium]
port = 5998
opcodes = login_opcodes.conf

[SoD]
port = 5999
opcodes = login_opcodes_sod.conf

[schema]
account_table = tblLoginServerAccounts
world_registration_table = tblWorldServerRegistration
world_admin_registration_table = tblServerAdminRegistration
world_server_type_table = tblServerListType

eqemu_config.xml
<?xml version="1.0">
<server>
<world>
<shortname>zephyr</shortname>
<longname>Zephyr Halls EQ</longname>

<!-- Only specify these two if you really think you need to. (read: You don't) -->
<!-- <address>127.0.0.1</address> -->
<!-- <localaddress>192.168.1.103</localaddress> -->

<!-- Loginserver information. Defaults shown -->
<loginserver>
<host>localhost</host>
<port>5998</port>
<account></account>
<password></password>
</loginserver>

<!-- Server status. Default is unlocked -->
<!--<locked/>-->
<!-- <unlocked/> -->

<!-- Sets the ip/port for the tcp connections. Both zones and console (if enabled). Defaults are shown -->
<tcp ip="localhost" port="9000" telnet="disable"/>

<!-- Sets the shared key used by zone/launcher to connect to world -->
<key>zephyria8xlz916T453l137731z</key>

<!-- Enable and set the port for the HTTP service. Defaults are shown -->
<http port="9080" enabled="false" mimefile="mime.types" />
</world>

<!-- Chatserver (channels) information. Defaults shown -->
<chatserver>
<host>localhost</host>
<port>7778</port>
</chatserver>

<!-- Mailserver (in-game mail) information. Defaults shown -->
<mailserver>
<host>localhost</host>
<port>7779</port>
</mailserver>

<zones>
<defaultstatus>20</defaultstatus>

<!-- Sets port range for world to use to auto configure zones -->
<ports low="7000" high="7100"/>
</zones>

<!-- Database configuration, replaces db.ini. Defaults shown -->
<database>
<host>localhost</host>
<port>3306</port>
<username>root</username>
<password>xxxxx</password>
<db>peq</db>
</database>

<!-- Launcher Configuration -->
<launcher>
<!-- <logprefix>logs/zone-</logprefix> -->
<!-- <logsuffix>.log</logsuffix> -->
<!-- <exe>zone.exe or ./zone</exe> -->
<!-- <timers restart="10000" reterminate="10000"> -->
</launcher>

<!-- File locations. Defaults shown -->
<files>
<!-- <spells>spells_us.txt</spells> -->
<!-- <opcodes>opcodes.conf</opcodes> -->
<!-- <logsettings>log.ini</logsettings> -->
<!-- <eqtime>eqtime.cfg</eqtime> -->
</files>
<!-- Directory locations. Defaults shown -->
<directories>
<!-- <maps>Maps</maps> -->
<!-- <quests>quests</quests> -->
<!-- <plugins>plugins</plugins> -->
</directories>
</server>

Vexyl
01-31-2012, 03:14 AM
After doing a few minutes research it looks like you may be missing "Microsoft Visual C++ 2010 Redistributable Package (x64)". Try installing it and see if it fixes your problem.

Linen
01-31-2012, 03:19 AM
Thanks for the reply!

Unfortunately, I think I've already got that installed. Trying to download and install it again gave me the "repair or uninstall?" dialog box. I appreciate the help nonetheless.

Vexyl
01-31-2012, 03:26 AM
You're trying to compile eqemu as a 64-bit application?
I remember reading that isn't well supported yet, but nonetheless take a look at this:
http://msoos.wordpress.com/2010/09/11/0xc000007b-error-solution/

Unfortunately I am not running Windows and cannot experiment with this problem, I hope that you will figure it out.

Vexyl
01-31-2012, 03:32 AM
From what I've read about the error, it seems that it's trying to load a 32-bit DLL as a 64-bit process, which can't be done.

Linen
01-31-2012, 03:37 AM
That Dependency Walker program is amazing. Really cool tech.

That, and it helped me find the problem. You're brilliant!

Here's what happened, and it's rather stupid of me. I installed Perl 5.14 (the 32 bit version) AND the x64 version (and did not uninstall the 32 bit version first, which was a silly mistake on my part). My system path statement pointed to both of them, and world.exe (according to that lovely Dependency Walker) was using the 32 bit version first. A quick fix of the path statement and all appears to be well, at least with that.

Thanks a ton. This was driving me crazy!

Vexyl
01-31-2012, 03:40 AM
It only took a few minutes out of my time. Google is an efficient and superb tool. ;)
Glad it's working.

Noport
02-02-2012, 08:45 AM
[NET__WORLD] WorldConnection connect: Connecting to the server localhost:9000 failed: TCPConnection::Connect(): connect() failed. Error: 10061

That error tells me your missing your ip address for your world server

using navicat software in your peq database file you need to look at is zone_servers
example
Name of server Zephyr Halls EQ, ip address of world 127.0.0.1, port 9000,player count 1, todays date.