Помогите решить проблему с крахом
#1

В общем суть такова.
Спустя некоторого времени сервер (0.3е win) просто напросто крашит.
в логах увидел это:
pawn Код:
--------------------------
SA-MP Server: 0.3e

Exception At Address: 0x762EFC56 Module: (kernel32.dll)
Registers:
EAX: 0x0012FB48 EBX: 0x01E6AC88 ECX: 0x00000003 EDX: 0x00000000
ESI: 0x01E6C56C EDI: 0x01E834A8 EBP: 0x0012FB98 ESP: 0x0012FB48
EFLAGS: 0x00000216

Stack:
+0000: 0xE06D7363   0x00000001   0x00000000   0x762EFC56
+0010: 0x00000003   0x19930520   0x0012FC00   0x710A6C58
+0020: 0x01E67250   0x0000001F   0x01E66FD0   0x0000001A
+0030: 0x0012FB98   0x6EB36FCC   0x01E67250   0x0000001F
+0040: 0x01E66FD0   0x0000001A   0x0000001F   0x0000001F
+0050: 0x0012FBD0   0x6E87DBF9   0xE06D7363   0x00000001
+0060: 0x00000003   0x0012FBC4   0xE06D7363   0x00000001
+0070: 0x00000000   0x00000000   0x00000003   0x19930520
+0080: 0x0012FC00   0x710A6C58   0x0012FC38   0x7108FB07
+0090: 0x0012FC00   0x710A6C58   0x00000020   0x0012FC04
+00A0: 0x01E66FD0   0x01E60000   0x00000000   0x00000018
+00B0: 0x0000001A   0x0000001F   0x710A51FC   0x00000000
+00C0: 0x00000000   0x00000018   0x01E67250   0x59D8875A
+00D0: 0xFFFFFFFE   0x00000000   0x0000001A   0x0000001F
+00E0: 0x01E834C8   0x0012FCC0   0x710A3A02   0x00000000
+00F0: 0x01E68C88   0x7109B123   0x01E810F0   0x01E834A8
+0100: 0x00000000   0x01E810F8   0x01E810F4   0x7F800000
+0110: 0x01E6ACF4   0x00000000   0x71086AA4   0x01E810B0
+0120: 0x01E68C70   0x01E6C56C   0x01E68C88   0x01E6C56C
+0130: 0x0012FE00   0x00000000   0x00000000   0x0012FC68
--------------------------
Loaded Modules:
samp-server.exe A: 0x00400000 - 0x004EE000  (C:\Users\Administrator\Desktop\[RUS] GTA - Relax SA\samp-server.exe)
ntdll.dll   A: 0x77AD0000 - 0x77BF8000  (C:\Windows\system32\ntdll.dll)
kernel32.dll    A: 0x762B0000 - 0x7638C000  (C:\Windows\system32\kernel32.dll)
SHELL32.dll A: 0x769E0000 - 0x774F1000  (C:\Windows\system32\SHELL32.dll)
msvcrt.dll  A: 0x777E0000 - 0x7788A000  (C:\Windows\system32\msvcrt.dll)
GDI32.dll   A: 0x77C00000 - 0x77C4B000  (C:\Windows\system32\GDI32.dll)
USER32.dll  A: 0x76860000 - 0x768FD000  (C:\Windows\system32\USER32.dll)
ADVAPI32.dll    A: 0x77550000 - 0x77616000  (C:\Windows\system32\ADVAPI32.dll)
RPCRT4.dll  A: 0x76390000 - 0x76453000  (C:\Windows\system32\RPCRT4.dll)
SHLWAPI.dll A: 0x76630000 - 0x76689000  (C:\Windows\system32\SHLWAPI.dll)
WSOCK32.dll A: 0x739E0000 - 0x739E7000  (C:\Windows\system32\WSOCK32.dll)
WS2_32.dll  A: 0x769B0000 - 0x769DD000  (C:\Windows\system32\WS2_32.dll)
NSI.dll A: 0x76920000 - 0x76926000  (C:\Windows\system32\NSI.dll)
WINMM.dll   A: 0x748B0000 - 0x748E2000  (C:\Windows\system32\WINMM.dll)
OLEAUT32.dll    A: 0x77890000 - 0x7791D000  (C:\Windows\system32\OLEAUT32.dll)
OLEACC.dll  A: 0x74670000 - 0x746AE000  (C:\Windows\system32\OLEACC.dll)
IMM32.DLL   A: 0x76900000 - 0x7691E000  (C:\Windows\system32\IMM32.DLL)
MSCTF.dll   A: 0x77C50000 - 0x77D18000  (C:\Windows\system32\MSCTF.dll)
LPK.DLL A: 0x77D20000 - 0x77D29000  (C:\Windows\system32\LPK.DLL)
USP10.dll   A: 0x76930000 - 0x769AD000  (C:\Windows\system32\USP10.dll)
comctl32.dll    A: 0x74DB0000 - 0x74F4E000  (C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.6002.18305_none_5cb72f2a088b0ed3\comctl32.dll)
apphelp.dll A: 0x75F90000 - 0x75FBC000  (C:\Windows\system32\apphelp.dll)
streamer.dll    A: 0x71080000 - 0x710AD000  (C:\Users\Administrator\Desktop\[RUS] GTA - Relax SA\plugins\streamer.dll)
MSVCR90.dll A: 0x6E820000 - 0x6E8C3000  (C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91\MSVCR90.dll)
MSVCP90.dll A: 0x6EB30000 - 0x6EBBD000  (C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91\MSVCP90.dll)
mswsock.dll A: 0x757F0000 - 0x7582B000  (C:\Windows\system32\mswsock.dll)
wshtcpip.dll    A: 0x75540000 - 0x75545000  (C:\Windows\System32\wshtcpip.dll)
NLAapi.dll  A: 0x75380000 - 0x7538F000  (C:\Windows\system32\NLAapi.dll)
IPHLPAPI.DLL    A: 0x759F0000 - 0x75A09000  (C:\Windows\system32\IPHLPAPI.DLL)
dhcpcsvc.DLL    A: 0x759B0000 - 0x759E5000  (C:\Windows\system32\dhcpcsvc.DLL)
DNSAPI.dll  A: 0x75C30000 - 0x75C5C000  (C:\Windows\system32\DNSAPI.dll)
Secur32.dll A: 0x76020000 - 0x76034000  (C:\Windows\system32\Secur32.dll)
WINNSI.DLL  A: 0x759A0000 - 0x759A7000  (C:\Windows\system32\WINNSI.DLL)
dhcpcsvc6.DLL   A: 0x75970000 - 0x75992000  (C:\Windows\system32\dhcpcsvc6.DLL)
napinsp.dll A: 0x72680000 - 0x7268F000  (C:\Windows\system32\napinsp.dll)
winrnr.dll  A: 0x72650000 - 0x72658000  (C:\Windows\System32\winrnr.dll)
WLDAP32.dll A: 0x77500000 - 0x77549000  (C:\Windows\system32\WLDAP32.dll)
PSAPI.DLL   A: 0x760F0000 - 0x760F7000  (C:\Windows\system32\PSAPI.DLL)
rasadhlp.dll    A: 0x72690000 - 0x72696000  (C:\Windows\system32\rasadhlp.dll)
PROPSYS.dll A: 0x74390000 - 0x7444B000  (C:\Windows\system32\PROPSYS.dll)
CLBCatQ.DLL A: 0x77920000 - 0x779A4000  (C:\Windows\system32\CLBCatQ.DLL)
iertutil.dll    A: 0x77620000 - 0x777D8000  (C:\Windows\system32\iertutil.dll)
urlmon.dll  A: 0x76190000 - 0x762A1000  (C:\Windows\system32\urlmon.dll)
WININET.dll A: 0x779B0000 - 0x77ACB000  (C:\Windows\system32\WININET.dll)
Normaliz.dll    A: 0x766C0000 - 0x766C3000  (C:\Windows\system32\Normaliz.dll)
SETUPAPI.dll    A: 0x766D0000 - 0x7685A000  (C:\Windows\system32\SETUPAPI.dll)
NTMARTA.DLL A: 0x75590000 - 0x755B1000  (C:\Windows\system32\NTMARTA.DLL)
SAMLIB.dll  A: 0x75C10000 - 0x75C21000  (C:\Windows\system32\SAMLIB.dll)
VERSION.dll A: 0x75560000 - 0x75568000  (C:\Windows\system32\VERSION.dll)
Помогите разабраться в причине.
Reply
#2

Оно строго через определенное время падает, или через какое-то время, но всегда по разному?
Может деление на ноль происходит?
Reply
#3

Quote:
Originally Posted by jhonyxakep
Посмотреть сообщение
Может деление на ноль происходит?
Не думаю, что из-за этого может случиться вылет. Хоть у сервера и будет Run time error, но он продолжит свою работу верно...
Reply
#4

Малол-ли где там обработки исключения нет? Может в пабликах на месте, а в таймерах Кейман и Ко забыли.
Reply
#5

Ясно же, что проблема в кривых руках автора, а вы в непаханную степь полезли, тыкать пальцем в небо, деление на ноль, да уж, ну выдаст сервер NaN или Inf, и? Падать он не будет.
Подключите, например, плагин крашдетект, и покажите данные о падении.
Reply
#6

От чего-же степь? Всякое бывает. Не факт, что исключение нормально обработается.
Reply
#7

Quote:
Originally Posted by jhonyxakep
Посмотреть сообщение
От чего-же степь? Всякое бывает. Не факт, что исключение нормально обработается.
Пфф, ты просто тыкнул пальцем в небо, причем, попал в землю, на, проверяй, зависит от того, что выдаст твой процессор:

new Float:a=1.0;
new Float:b=0.0;
new Float:c=a/b;
print©;
Reply
#8

Не вопрос, на досуге проверю на разных ОС, в разных кусках кода.
Reply
#9

Раз уж тут начали оффтопить, то деление на 0 - это аппаратное исключение. И если в случае с вещественными числами, можно установить флаги математическому сопроцессору (сейчас уже компоненту процессора), что в данном случае делать: можно просто игнорить и будет вполне себе валидная бесконечность, то в случае с целыми числами нужно ловить исключение. Все сказанное относиться, конечно, к нативному коду (как самп такие вещи обрабатывает я не знаю).
Reply
#10

Разобрался с отключением, но теперь проблема с лагами. Все хорошо потом опять крэш и начинаются лаги
Reply
#11

Как разобрались? Что-то мне подсказывает все-таки, что проблема в таймерах.
Reply
#12

Именно так но и поспособствовало повтор в названиях сервера и тд. (прописано в моде, и в файле кфг)
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)