How to make World.exe and Zone.exe run as an NT service on a Windows XP based OS.
Please read the entire post before you start.
INSTALLING THE SERVICES:
1) You will need INSTSRV.EXE and SRVANY.EXE. You can get them here.
http://www.tacktech.com/display.cfm?ttid=197
2) Copy them to a permanant place. They will need to stay there from now on.
3) Open a command line.
4) Type
<PATH>\INSTSRV.EXE <NAME YOU WANT THE SERVICE TO BE CALLED> <PATH>\SRVANY.EXE
This will create the REGISTRY ENTRIES needed for the service you will be setting up.
Example:
c:\windows\system32\instsrv.exe world c:\windows\system32\srvany.exe
5) When doing ZONE.EXE you will need to do this for how ever many zones you want running at one time.
Example:
c:\windows\system32\instsrv.exe zone_7795 c:\windows\system32\srvany.exe
Example:
c:\windows\system32\instsrv.exe zone_7796 c:\windows\system32\srvany.exe
EDITING AND CREATING THE PARAMETERS OF THE SERVICES:
1) When you are done with your entries, open the REGISTRY EDITOR.
2) Navigate to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\<service name>
3) Right click on the
<service name>
4) In the drop down click on
New then on
KEY
5) Name the key
Parameters
6) Do this for each entry you made in steps 4 and 5 of
INSTALLING THE SERVICES
7) Right click on
Parameters
8) In the drop down click on
New then on
String Value
9) Name the String Value
Application
10) Right click on
Parameters
11) In the drop down click on
New then on
String Value
12) Name the string value
AppDirectory
14) In the registry entry for
WORLD. Do the following.
15) For the string value
Application, edit and type
<PATH>\world.exe
16) For the string value
AppDirectory, edit and type
<PATH TO WORLD.EXE>
17) In the registry entries you made for
ZONE. Do the following.
18) Open BOOT5ZONES.BAT in a text editor for reference.
19) For the string value
Application, edit and type
<PATH>\zone.exe <WHATEVER YOU
HAVE IN BOOT5ZONES AFTER ZONE>
Example:
C:\EQEMU\ZONE.EXE . <YOUR IP> 7795 <YOUR IP>(Note: Change the Port number
for each ZONE entry you made in step 5 so they match BOOT5ZONES and don't forget the
.(dot) between ZONE.EXE and <YOUR IP> at the beginning)
Theses entries must look exactly like the entries in your BOOT5ZONES.bat file.
Doing a copy and paste might be the easiest way.
20) For the string value
AppDirectory, edit and type
<PATH To ZONE.EXE>
(Note: Do this for each entry you made in step 5)
You are done.
As long as you had it all working before. When you start the services it should start up just fine. Note: Make sure you name the entries so they are in alpha order, windows starts the services in alpha order. I named mine world and zone_7795, zone_7796 etc.,
so that world.exe would start first then the zones.
Courtesy of Lurker
When you need to stop and start all of your services at once. You can do the following.
Create eqemu_stop.bat
Code:
net stop "zone_7995"
net stop "zone_7996"
net stop "zone_7997"
net stop "zone_7998"
net stop "zone_7999"
net stop "world"
Create eqemu_start.bat
Code:
net start "world"
net start "zone_7995"
net start "zone_7996"
net start "zone_7997"
net start "zone_7998"
net start "zone_7999"
Please let me know if any is wrong, misspelled, unclear etc.
Enjoy!
NightShift
Edited: Because for some reason I didn't catch that I misspelled parameters.