I Wrote a little script to Startup the VSRO ServerFiles with a few mouseclicks!
i'll release the SourceCode here for futher develoopment. if you have any idears for it. please release all codes here.
Description
On the processSettings tab, you can enter all needed files
After that you can run the server with one click on (Full Server Startup)
and here is the Sourcecode of the tool. its in

Code:
#cs ----------------------------------------------------------------------------
Silkroad Online Server ProcessMannager: 1.0
Author: DJBeatstar
By DJBeatstar in DJBeatstar Design
(c) 2011 Germany
Tool for Starting up a Silkroad Online Server with a few mouseclicks.
#ce ----------------------------------------------------------------------------
Global $error
DirCreate ("C:\tmp")
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <TabConstants.au3>
#include <WindowsConstants.au3>
FileInstall ("E:\Eigene Dateien\Source Codes\SRO Server Startup tool\header.jpg", "C:\tmp\header.jpg",1)
#Region ### START Koda GUI section ### Form=E:\Eigene Dateien\Source Codes\SRO Server Startup tool (Source)\Mainwindow.kxf
$Form1_1 = GUICreate("SRO Server Startup Tool", 625, 426)
$Pic1 = GUICtrlCreatePic("C:\tmp\header.jpg", 200, 0, 200, 110, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
;Tab ServerControl
$Tab1 = GUICtrlCreateTab(8, 112, 609, 305)
GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT)
$TabSheet1 = GUICtrlCreateTabItem("Server Control")
;GlobalManager Control
$Label1 = GUICtrlCreateLabel("GlobalManager", 20, 157, 82, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$run1 = GUICtrlCreateButton("Run", 140, 149, 75, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;MachineManager Control
$Label2 = GUICtrlCreateLabel("MachineManager", 20, 189, 93, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$run2 = GUICtrlCreateButton("Run", 140, 181, 75, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;DownloadServer Control
$Label3 = GUICtrlCreateLabel("DownloadServer", 20, 221, 83, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$run3 = GUICtrlCreateButton("Run", 140, 213, 75, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;GatewayServer Control
$Label4 = GUICtrlCreateLabel("GatewayServer", 20, 253, 77, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$run4 = GUICtrlCreateButton("Run", 140, 245, 75, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;FarmManager Control
$Label5 = GUICtrlCreateLabel("FarmManager", 20, 285, 75, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$run5 = GUICtrlCreateButton("Run", 140, 277, 75, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;AgentServer Control
$Label6 = GUICtrlCreateLabel("AgentServer", 20, 317, 63, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$run6 = GUICtrlCreateButton("Run", 140, 309, 75, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;SR_ShardManager Control
$Label7 = GUICtrlCreateLabel("SR_ShardManager", 20, 349, 101, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$run7 = GUICtrlCreateButton("Run", 140, 341, 75, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;SR_GameServer Control
$Label8 = GUICtrlCreateLabel("SR_GamesServer", 20, 381, 89, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$run8 = GUICtrlCreateButton("Run", 140, 373, 75, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;Certification Server Control
$Label9 = GUICtrlCreateLabel("Certification Server", 284, 157, 93, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$run9 = GUICtrlCreateButton("Run", 388, 149, 75, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;Full Serverstartup
$runall = GUICtrlCreateButton("Full Server Startup", 284, 181, 251, 81, $WS_GROUP)
GUICtrlSetFont(-1, 15, 400, 0, "Arial")
;Full Servershutdown
$stopall = GUICtrlCreateButton("Full Server Shutdown", 284, 277, 251, 81, $WS_GROUP)
GUICtrlSetFont(-1, 15, 400, 0, "Arial")
;Tab ProcessSettings
$TabSheet2 = GUICtrlCreateTabItem("ProcessSettings")
;GlobalManager Path
$Label11 = GUICtrlCreateLabel("GlobalManager", 20, 157, 82, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Input1 = GUICtrlCreateInput(IniRead (@ScriptDir & "\settings.ini", "Files", "gm", "GlobalMannager.exe"), 128, 152, 121, 22)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$b1 = GUICtrlCreateButton("Browse", 256, 152, 59, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;MachineManager Path
$Label12 = GUICtrlCreateLabel("MachineManager", 20, 189, 93, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Input2 = GUICtrlCreateInput(IniRead (@ScriptDir & "\settings.ini", "Files", "mm", "MachineManager.exe"), 128, 184, 121, 22)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$b2 = GUICtrlCreateButton("Browse", 256, 184, 59, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;DownloadServer Path
$Label13 = GUICtrlCreateLabel("DownloadServer", 20, 221, 83, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Input3 = GUICtrlCreateInput(IniRead (@ScriptDir & "\settings.ini", "Files", "ds", "DownloadServer.exe"), 128, 216, 121, 22)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$b3 = GUICtrlCreateButton("Browse", 256, 216, 59, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;GatewayServer Path
$Label14 = GUICtrlCreateLabel("GatewayServer", 20, 253, 77, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Input4 = GUICtrlCreateInput(IniRead (@ScriptDir & "\settings.ini", "Files", "gs", "GatewayServer.exe"), 128, 248, 121, 22)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$b4 = GUICtrlCreateButton("Browse", 256, 248, 59, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;FarmManager Path
$Label15 = GUICtrlCreateLabel("FarmManager", 20, 285, 75, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Input5 = GUICtrlCreateInput(IniRead (@ScriptDir & "\settings.ini", "Files", "fm", "FarmManager.exe"), 128, 280, 121, 22)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$b5 = GUICtrlCreateButton("Browse", 256, 280, 59, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;AgentServer Path
$Label16 = GUICtrlCreateLabel("AgentServer", 20, 317, 63, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Input6 = GUICtrlCreateInput(IniRead (@ScriptDir & "\settings.ini", "Files", "as", "AgentServer.exe"), 128, 312, 121, 22)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$b6 = GUICtrlCreateButton("Browse", 256, 312, 59, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;SR_ShardManager Path
$Label17 = GUICtrlCreateLabel("SR_ShardManager", 20, 349, 101, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Input7 = GUICtrlCreateInput(IniRead (@ScriptDir & "\settings.ini", "Files", "srs", "SR_ShardManager.exe"), 128, 344, 121, 22)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$b7 = GUICtrlCreateButton("Browse", 256, 344, 59, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;SR_GameServer Path
$Label18 = GUICtrlCreateLabel("SR_GamesServer", 20, 381, 89, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Input8 = GUICtrlCreateInput(IniRead (@ScriptDir & "\settings.ini", "Files", "SRG", "SR_GameServer.exe"), 128, 376, 121, 22)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$b8 = GUICtrlCreateButton("Browse", 256, 376, 59, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;Certification Server Path
$Label19 = GUICtrlCreateLabel("Certification Server", 324, 157, 93, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Input9 = GUICtrlCreateInput(IniRead (@ScriptDir & "\settings.ini", "Files", "cs", "Certification Server.exe"), 424, 152, 121, 22)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$b9 = GUICtrlCreateButton("Browse", 552, 152, 59, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;packt.dat Path
$Label20 = GUICtrlCreateLabel("packt.dat", 324, 189, 93, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Input10 = GUICtrlCreateInput(IniRead (@ScriptDir & "\settings.ini", "Files", "dat", "packt.dat"), 424, 184, 121, 22)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$b10 = GUICtrlCreateButton("Browse", 552, 184, 59, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
;Save All
$save = GUICtrlCreateButton("Save Settings", 320, 216, 291, 25, $WS_GROUP)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
GUICtrlCreateTabItem("")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
DirRemove ("C:\tmp",1)
Exit
Case $b1
$gm = FileOpenDialog ( "GlobalManager.exe", "C:\", "Executeable (*.exe)", 1, "GlobalManager.exe")
GUICtrlSetData ($Input1, "", "")
GUICtrlSetData ($Input1, $gm, "Path")
Case $b2
$mm = FileOpenDialog ( "MachineManager.exe", "C:\", "Executeable (*.exe)", 1, "MachineManager.exe")
GUICtrlSetData ($Input2, "", "")
GUICtrlSetData ($Input2, $mm, "Path")
Case $b3
$ds = FileOpenDialog ( "DownloadServer.exe", "C:\", "Executeable (*.exe)", 1, "DownloadServer.exe")
GUICtrlSetData ($Input3, "", "")
GUICtrlSetData ($Input3, $ds, "Path")
Case $b4
$gs = FileOpenDialog ( "GatewayServer.exe", "C:\", "Executeable (*.exe)", 1, "GatewayServer.exe")
GUICtrlSetData ($Input4, "", "")
GUICtrlSetData ($Input4, $gs, "Path")
Case $b5
$fm = FileOpenDialog ( "FarmManager.exe", "C:\", "Executeable (*.exe)", 1, "FarmManager.exe")
GUICtrlSetData ($Input5, "", "")
GUICtrlSetData ($Input5, $fm, "Path")
Case $b6
$as = FileOpenDialog ( "AgentServer.exe", "C:\", "Executeable (*.exe)", 1, "AgentServer.exe")
GUICtrlSetData ($Input6, "", "")
GUICtrlSetData ($Input6, $as, "Path")
Case $b7
$srs = FileOpenDialog ( "SR_ShardManager.exe", "C:\", "Executeable (*.exe)", 1, "SR_ShardManager.exe")
GUICtrlSetData ($Input7, "", "")
GUICtrlSetData ($Input7, $srs, "Path")
Case $b8
$srg = FileOpenDialog ( "SR_GameServer.exe", "C:\", "Executeable (*.exe)", 1, "SR_GameServer.exe")
GUICtrlSetData ($Input8, "", "")
GUICtrlSetData ($Input8, $srg, "Path")
Case $b9
$cm = FileOpenDialog ( "Certification Server.exe", "C:\", "Executeable (*.exe)", 1, "Certification Server.exe")
GUICtrlSetData ($Input9, "", "")
GUICtrlSetData ($Input9, $cm, "Path")
Case $b10
$dat = FileOpenDialog ( "Packt.dat", "C:\", "DataFile (*.dat)", 1, "Packt.dat")
GUICtrlSetData ($Input10, "", "")
GUICtrlSetData ($Input10, $dat, "Path")
Case $save
IniWrite (@ScriptDir & "\settings.ini", "Files", "gm", GUICtrlRead ($Input1))
IniWrite (@ScriptDir & "\settings.ini", "Files", "mm", GUICtrlRead ($Input2))
IniWrite (@ScriptDir & "\settings.ini", "Files", "ds", GUICtrlRead ($Input3))
IniWrite (@ScriptDir & "\settings.ini", "Files", "gs", GUICtrlRead ($Input4))
IniWrite (@ScriptDir & "\settings.ini", "Files", "fm", GUICtrlRead ($Input5))
IniWrite (@ScriptDir & "\settings.ini", "Files", "as", GUICtrlRead ($Input6))
IniWrite (@ScriptDir & "\settings.ini", "Files", "srs", GUICtrlRead ($Input7))
IniWrite (@ScriptDir & "\settings.ini", "Files", "srg", GUICtrlRead ($Input8))
IniWrite (@ScriptDir & "\settings.ini", "Files", "cs", GUICtrlRead ($Input9))
IniWrite (@ScriptDir & "\settings.ini", "Files", "dat", GUICtrlRead ($Input10))
Case $runall
If ProcessExists ("w3wp.exe") Then
If ProcessExists ("FileZilla Server.exe") Then
if ProcessExists ("sqlservr.exe") Then
if $error = 1 Then
$error = 0
EndIf
certifi()
If Not $error = 1 Then
gm()
EndIf
If Not $error = 1 Then
mm()
EndIf
If Not $error = 1 Then
ds()
EndIf
If Not $error = 1 Then
gs()
EndIf
If Not $error = 1 Then
fm()
EndIf
If Not $error = 1 Then
as()
EndIf
If Not $error = 1 Then
srs()
EndIf
If Not $error = 1 Then
srg()
EndIf
Else
MsgBox (16, "Error!", "The MSSQL Server is Offline! please start the MSSQL Service first")
EndIf
Else
MsgBox (16, "Error!", "The FileZilla FTP Server is Offline! please start the FileZilla FTP Server Service first")
EndIf
Else
MsgBox (16, "Error!", "The Microsoft IIS Server is Offline! please start the IIS Server Service first")
EndIf
Case $stopall
serverdown()
EndSwitch
WEnd
Func certifi()
If FileExists (GUICtrlRead ($Input9)) Then
Run (GUICtrlRead ($Input9) & " " & GUICtrlRead ($Input10))
GUICtrlSetData ($run9, "Starting")
Sleep (5000)
if Not ProcessExists ("CustomCertificationServer.exe") Then
$error = 1
MsgBox (16, "ERROR!", "Error! The Certification Server did not startet")
Else
GUICtrlSetData ($run9, "Online")
EndIf
Else
$error = 1
MsgBox (16, "ERROR!", "Error! The Certification Server is missing")
EndIf
EndFunc
Func gm()
If FileExists (GUICtrlRead ($Input1)) Then
Run (GUICtrlRead ($Input1))
GUICtrlSetData ($run1, "Starting")
Sleep (5000)
if Not ProcessExists ("GlobalManager.exe") Then
$error = 1
MsgBox (16, "ERROR!", "Error! The GlobalManager did not startet")
Else
GUICtrlSetData ($run1, "Online")
EndIf
Else
$error = 1
MsgBox (16, "ERROR!", "Error! The GlobalManager is missing")
EndIf
EndFunc
Func mm()
If FileExists (GUICtrlRead ($Input2)) Then
Run (GUICtrlRead ($Input2))
GUICtrlSetData ($run2, "Starting")
Sleep (5000)
if Not ProcessExists ("MachineManager.exe") Then
$error = 1
MsgBox (16, "ERROR!", "Error! The MachineManager did not startet")
Else
GUICtrlSetData ($run2, "Online")
EndIf
Else
$error = 1
MsgBox (16, "ERROR!", "Error! The MachineManager is missing")
EndIf
EndFunc
Func ds()
If FileExists (GUICtrlRead ($Input3)) Then
Run (GUICtrlRead ($Input3))
GUICtrlSetData ($run3, "Starting")
Sleep (5000)
if Not ProcessExists ("DownloadServer.exe") Then
$error = 1
MsgBox (16, "ERROR!", "Error! The DownloadServer did not startet")
Else
GUICtrlSetData ($run3, "Online")
EndIf
Else
$error = 1
MsgBox (16, "ERROR!", "Error! The DownloadServer is missing")
EndIf
EndFunc
Func gs()
If FileExists (GUICtrlRead ($Input4)) Then
Run (GUICtrlRead ($Input4))
GUICtrlSetData ($run4, "Starting")
Sleep (5000)
if Not ProcessExists ("GatewayServer.exe") Then
$error = 1
MsgBox (16, "ERROR!", "Error! The GatewayServer did not startet")
Else
GUICtrlSetData ($run4, "Online")
EndIf
Else
$error = 1
MsgBox (16, "ERROR!", "Error! The GatewayServer is missing")
EndIf
EndFunc
Func fm()
If FileExists (GUICtrlRead ($Input5)) Then
Run (GUICtrlRead ($Input5))
GUICtrlSetData ($run5, "Starting")
Sleep (5000)
if Not ProcessExists ("FarmManager.exe") Then
$error = 1
MsgBox (16, "ERROR!", "Error! The FarmManager did not startet")
Else
GUICtrlSetData ($run5, "Online")
EndIf
Else
$error = 1
MsgBox (16, "ERROR!", "Error! The FarmManager is missing")
EndIf
EndFunc
Func as()
If FileExists (GUICtrlRead ($Input6)) Then
Run (GUICtrlRead ($Input6))
GUICtrlSetData ($run6, "Starting")
Sleep (5000)
if Not ProcessExists ("AgentServer.exe") Then
$error = 1
MsgBox (16, "ERROR!", "Error! The AgentServer did not startet")
Else
GUICtrlSetData ($run6, "Online")
EndIf
Else
$error = 1
MsgBox (16, "ERROR!", "Error! The AgentServer is missing")
EndIf
EndFunc
Func srs()
If FileExists (GUICtrlRead ($Input7)) Then
Run (GUICtrlRead ($Input7))
GUICtrlSetData ($run7, "Starting")
Sleep (20000)
if Not ProcessExists ("SR_ShardManager.exe") Then
$error = 1
MsgBox (16, "ERROR!", "Error! The SR_ShardManager did not startet")
Else
GUICtrlSetData ($run7, "Online")
EndIf
Else
$error = 1
MsgBox (16, "ERROR!", "Error! The SR_ShardManager is missing")
EndIf
EndFunc
Func srg()
If FileExists (GUICtrlRead ($Input8)) Then
Run (GUICtrlRead ($Input8))
GUICtrlSetData ($run8, "Starting")
Sleep (20000)
if Not ProcessExists ("SR_GameServer.exe") Then
$error = 1
MsgBox (16, "ERROR!", "Error! The SR_GameServer did not startet")
Else
GUICtrlSetData ($run8, "Online")
EndIf
Else
$error = 1
MsgBox (16, "ERROR!", "Error! The SR_GameServer is missing")
EndIf
EndFunc
Func serverdown()
$shutdown = MsgBox (32 + 4, "Shutdown SilkRoad Server!", "Are you sure that you want to shutdown the Silkroad Server?")
If $shutdown = 6 Then
If ProcessExists ("SR_GameServer.exe") Then
ProcessClose ("SR_GameServer.exe")
GUICtrlSetData ($run8, "run")
EndIf
If ProcessExists ("SR_ShardManager.exe") Then
ProcessClose ("SR_ShardManager.exe")
GUICtrlSetData ($run7, "run")
EndIf
If ProcessExists ("AgentServer.exe") Then
ProcessClose ("AgentServer.exe")
GUICtrlSetData ($run6, "run")
EndIf
If ProcessExists ("FarmManager.exe") Then
ProcessClose ("FarmManager.exe")
GUICtrlSetData ($run5, "run")
EndIf
If ProcessExists ("GatewayServer.exe") Then
ProcessClose ("GatewayServer.exe")
GUICtrlSetData ($run4, "run")
EndIf
If ProcessExists ("DownloadServer.exe") Then
ProcessClose ("DownloadServer.exe")
GUICtrlSetData ($run3, "run")
EndIf
If ProcessExists ("MachineManager.exe") Then
ProcessClose ("MachineManager.exe")
GUICtrlSetData ($run2, "run")
EndIf
If ProcessExists ("GlobalManager.exe") Then
ProcessClose ("GlobalManager.exe")
GUICtrlSetData ($run1, "run")
EndIf
If ProcessExists ("CustomCertificationServer.exe") Then
ProcessClose ("CustomCertificationServer.exe")
GUICtrlSetData ($run9, "run")
EndIf
EndIf
EndFunc
DJBeatstar
PS.:
I've bin asked for a Tutorial to Compile the script. so here it is.
1. Download AutoIt 3
2. Install AutoIt 3
3. Rightclick on Desktop - New - AutoIt v3 Script
4. Copy and paste the sourceCode to your new Script
5. Save it
6. Rightklick on script an click "Compile Script"
7. Youre done.
By The Way...
If there is a Link caled "Download Now! DONT KLICK! Its only a ad!!!
|
|
V






