-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathgo_multi_windows_FTP.bat
150 lines (119 loc) · 6.25 KB
/
go_multi_windows_FTP.bat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
@echo off
color 0A
chcp 1251 >NUL
@echo.
@echo.
@echo.
@echo Devoleped by ExRecod
@echo Forum http://xxxreal.ru/
@echo MULTI SERVERS RCM ADMIN MOD v.9
@echo.
@echo.
@echo.
title RCM ADMIN MOD V.9
IF not EXIST %~dp0\php\ (
MD %~dp0\php\
echo php - folder first install
)
IF not EXIST %~dp0\php\php.exe (
echo Option Explicit > %~dp0\download.vbs
echo Dim args, http, fileSystem, adoStream, url, target, status >> %~dp0\download.vbs
echo. >> %~dp0\download.vbs
echo Set args = Wscript.Arguments >> %~dp0\download.vbs
echo Set http = CreateObject^("WinHttp.WinHttpRequest.5.1"^) >> %~dp0\download.vbs
echo url = args^(0^) >> %~dp0\download.vbs
echo target = args^(1^) >> %~dp0\download.vbs
echo WScript.Echo "Getting '" ^& target ^& "' from '" ^& url ^& "'..." >> %~dp0\download.vbs
echo. >> %~dp0\download.vbs
echo http.Open "GET", url, False >> %~dp0\download.vbs
echo http.Send >> %~dp0\download.vbs
echo status = http.Status >> %~dp0\download.vbs
echo. >> %~dp0\download.vbs
echo If status ^<^> 200 Then >> %~dp0\download.vbs
echo WScript.Echo "FAILED to download: HTTP Status " ^& status >> %~dp0\download.vbs
echo WScript.Quit 1 >> %~dp0\download.vbs
echo End If >> %~dp0\download.vbs
echo. >> %~dp0\download.vbs
echo Set adoStream = CreateObject^("ADODB.Stream"^) >> %~dp0\download.vbs
echo adoStream.Open >> %~dp0\download.vbs
echo adoStream.Type = 1 >> %~dp0\download.vbs
echo adoStream.Write http.ResponseBody >> %~dp0\download.vbs
echo adoStream.Position = 0 >> %~dp0\download.vbs
echo. >> %~dp0\download.vbs
echo Set fileSystem = CreateObject^("Scripting.FileSystemObject"^) >> %~dp0\download.vbs
echo If fileSystem.FileExists^(target^) Then fileSystem.DeleteFile target >> %~dp0\download.vbs
echo adoStream.SaveToFile target >> %~dp0\download.vbs
echo adoStream.Close >> %~dp0\download.vbs
echo. >> %~dp0\download.vbs
cscript //Nologo %~dp0\download.vbs https://windows.php.net/downloadS/releases/archives/php-7.2.0-Win32-vc15-x86.zip %~dp0\php\php-7.2.0-Win32-vc15-x86.zip
del %~dp0\download.vbs
powershell.exe -nologo -noprofile -command "& { Add-Type -A 'System.IO.Compression.FileSystem'; [IO.Compression.ZipFile]::ExtractToDirectory('%~dp0\php\php-7.2.0-Win32-vc15-x86.zip', '%~dp0\php\'); }"
del %~dp0\php\php-7.2.0-Win32-vc15-x86.zip
) ELSE (
echo php - ok
)
IF not EXIST %~dp0\php\php.exe (
echo UNZIP %~dp0 php\php-7.2.0-Win32-vc15-x86.zip IN %~dp0 php\ FOLDER
)
IF not EXIST %~dp0\php\bin\ (
MD %~dp0\php\bin\
echo php\bin\ - folder first install
%~dp0\php\php.exe -r "copy('%~dp0\ReCodMod\functions\install\php.ini', '%~dp0\php\php.ini');"
)
IF EXIST %~dp0\win_cache_ms\ (
@echo.
echo Deleting folder, reinstall / Óäàëÿåì ïàïêó, ïåðåóñòàíîâêà:
RD /s %~dp0\win_cache_ms\
echo win_cache_ms - ok
) ELSE (
MD %~dp0\win_cache_ms\
echo win_cache_ms\ - first install
)
@echo.
setlocal enableDelayedExpansion
for /F "tokens=1,2,3,4 delims=;" %%A in (%~dp0\cfg\servers.cfg) do (
break>%~dp0\s.tmp
cmd.exe /c "title="RCM V.9 [SERVER %%A:%%B]" & tasklist /v /fo csv | findstr /i "cmd.exe" >> "%~dp0\s.tmp"
FOR /f "tokens=1,2,3,4,5,6,7,8,9 delims=," %%a IN (%~dp0\s.tmp) do (
set "server_pid=%%b"
set "server_status=%%f"
set "server_title=%%i"
)
@echo.
IF EXIST %~dp0\go_%%A_%%B.bat (
echo go_%%A_%%B.bat - ok
) ELSE (
@echo ******** INSTALL go_%%A_%%B.bat ********
@echo ^@echo off >> %~dp0\go_%%A_%%B.bat
@echo ^color 0A >> %~dp0\go_%%A_%%B.bat
@echo ^ title RCM V.9 ^[SERVER %%A:%%B^]>> %~dp0\go_%%A_%%B.bat
@echo ^ :1 >> %~dp0\go_%%A_%%B.bat
@echo ^ .\php\php.exe -f win_cache_ms\go_%%A_%%B.php >> %~dp0\go_%%A_%%B.bat
@echo ^ goto 1 >> %~dp0\go_%%A_%%B.bat
)
@echo.
IF EXIST %~dp0\win_cache_ms\go_%%A_%%B.php (
echo win_cache_ms\go_%%A_%%B.php - ok
) ELSE (
@echo ******** INSTALL win_cache_ms\go_%%A_%%B.php ********
@echo ^<^?php >> %~dp0\win_cache_ms\go_%%A_%%B.php
@echo ^function hxh^($sc^) >> %~dp0\win_cache_ms\go_%%A_%%B.php
@echo ^{ >> %~dp0\win_cache_ms\go_%%A_%%B.php
@echo ^$sc ^= str_replace^(array^( >> %~dp0\win_cache_ms\go_%%A_%%B.php
@echo ^"win_cache_ms/go_%%A_%%B.php^", ^"win_cache_ms\go_%%A_%%B.php^", ^"win_cache_ms\\go_%%A_%%B.php^", ^"win_cache_ms//go_%%A_%%B.php^" >> %~dp0\win_cache_ms\go_%%A_%%B.php
@echo ^), ^"^", $sc^); >> %~dp0\win_cache_ms\go_%%A_%%B.php
@echo ^ return $sc . ^"^"; >> %~dp0\win_cache_ms\go_%%A_%%B.php
@echo ^} >> %~dp0\win_cache_ms\go_%%A_%%B.php
@echo ^$cpath = hxh^(__FILE__^); >> %~dp0\win_cache_ms\go_%%A_%%B.php
@echo header^(^"Content-Type: text/html; charset^=UTF-8^"^); >> %~dp0\win_cache_ms\go_%%A_%%B.php
@echo error_reporting^(E_ALL^); >> %~dp0\win_cache_ms\go_%%A_%%B.php
@echo ini_set^(^"ignore_repeated_errors^", TRUE^); ini_set^(^"display_errors^", TRUE^); ini_set^(^"log_errors^", TRUE^); ini_set^(^"error_log^", $cpath.^"ReCodMod/php-all-errors.log^"^);>> %~dp0\win_cache_ms\go_%%A_%%B.php
@echo $server_ip ^= "%%A"; $server_port ^= "%%B"^; $server_rconpass = "%%C"; $mplogfile ^= "%%D"^; $server_port ^= trim^(^$server_port^)^; require $cpath."w.php"^;>> %~dp0\win_cache_ms\go_%%A_%%B.php
)
@echo.
start %~dp0\go_%%A_%%B.bat
echo ******************************************
@echo.
@echo.
)
echo ******end******