Перейти к содержанию

Автоматизация сбора отчетов об ошибках (CrashMonitor)


Nobi

Рекомендуемые сообщения

Ну вот окно 800х600 передвинул после старта игры
QnCZV.jpg

То что вместо интерфеса черная полоса, это изза скрина в момент краша который сносит всю картинку.
Белая полосочка и дальше границы темные, то это уже косяк в коде. Эти границы вроде делаются под кривизну виндовс аэро(подразумевалось что код использоваться будет несколько иначе.)
Ну и разумеется если передвинуть за границы экрана, то перекосоебит картинку. Если знаешь как сделать без перекосоеба и при этом чтобы без дополнительного кода на интерацию основного цикла, то подскажи как.

 

________

Поправил

Ссылка на комментарий

 

why you take down the inventory filter?

For the people (english) of Europe and Noth America, the mod will no longer support and not be available for download on NMA. (there are reasons this).

 

Это как вообще? Что произошло?

 

тот что 0х0000 ваще ничего с него не взять.

Блин, может опятьже прав не хватает чтобы сделать нормальный дамп? Хотя вроде DbgHelp.dll без ошибок отрабатывает и в WinDbg вроде как открывались

Ссылка на комментарий

Это как вообще? Что произошло?

Не братья они мне. Их предупреждали за антиросийскими действиями последуют последствия. :dance:

 

может опятьже прав не хватает чтобы сделать нормальный дамп?

Я имел ввиду, что с него ничего не возмешь, а так то он открывается нормально.

Ну вобщем дампы это для продвинутых в отладке людей.

Ссылка на комментарий

DllCall("Kernel32.dll", "ptr", "CreateRemoteThread", "ptr", $hOpenProcess, "ptr", 0, "uint", 0, "ptr", Ptr($targetProc), "ptr", 0, "dword", 0, "ptr", 0)

На живой игре делает скриншот, а на крашнутой добивает ее без скриншота(актуальный девбилд), как сделать вызов функции по нормальному я хз, и еще, на png какоето стремное сжатие стоит? она в lzma2 не жмется от этого

Ссылка на комментарий

Ну что, стабильно 1-2 краша в день приходит, в основном с проблемами движка/sfall, на удивление нет ещё ни одного скриптового краша.

Ссылка на комментарий

1

Fallout 2Путеводитель по модам | FAQ | Перевод модов | Путеводитель по RP

Nevada Band: Путеводитель по играм серииFAQ

Fallout Tactics: Путеводитель по модам | FAQ

База Данных: YD\YD\MF

Помогая другим, не забывай о себе =) 

Ссылка на комментарий

На живой игре делает скриншот, а на крашнутой добивает ее без скриншота(актуальный девбилд), как сделать вызов функции по нормальному я хз, и еще, на png какоето стремное сжатие стоит? она в lzma2 не жмется от этого

Это тест. На крашнутой и предпологалось что невыйдет сделать скрин. так это что работает?

это вообщето должен быть/будет в bmp.

Ты сделай мне спец версию чтобы я протестировал. просто вызов функции без лишних потрахов для перемещения файла.

Есть некоторые сомнения, что лучше получить скрин с небольшим отставанием (как сейчас) чем текущий кадр игры.

 

И еще заблокируй создание отчета (кнопка DONE и закрытие) если чел не ввел описание бага, ибо они забадали ничего неписать)

м.б. скрины прояснят некоторые ситуации.

Ссылка на комментарий

Там при краше в папке data создаётся папка selfчего-то там, вроде даже видео внутриигровое? Или с чем-то путаю?

:scratch_one-s_head:Это наверное к Сталину, моя софтина только в связке с ffmpeg видео пишет.

 

 

Ты сделай мне спец версию чтобы я протестировал. просто вызов функции без лишних потрахов для перемещения файла.

Сделаю просто экзешник по умолчанию вызывающий SaveScreenA, а первым параметром будет принимать название другой функции

 

 

И еще заблокируй создание отчета (кнопка DONE и закрытие) если чел не ввел описание бага, ибо они забадали ничего неписать)

Ок, подумаю как это лучше сделать

Ссылка на комментарий

Также заметил, на версии 2.6 , если отчет не отправить, то он потом при выходе опять надоедает отправить его. Поправил?

Нет, это специально напоминание, на случай если с первого раза оно не отправилось, к примеру от лагающего или отсутствующего инета на момент отправки. Либо отправляй, либо убирай из каталога крашрепорта

Ссылка на комментарий

Сделаю просто экзешник по умолчанию вызывающий SaveScreenA, а первым параметром будет принимать название другой функции

зачем совсем другой, просто в текущий всунь дополнительно вывов и все. итого будет два скрина

Ссылка на комментарий

Нет, это специально напоминание, на случай если с первого раза оно не отправилось, к примеру от лагающего или отсутствующего инета на момент отправки. Либо отправляй, либо убирай из каталога крашрепорта

Оно постоянно будет просить отправить, я специально краш сделал или не хочу отправку - зачем надоедать. Если краш постоянный так отправим, а так напоминает всю дурость - Хотите выключить - Точно хотите - Может передумаете - Да - Нет - Вы согласны - Да - Нет.

 

Лично меня это бесит :devil:

Ссылка на комментарий

зачем совсем

Так тебе проще будет тестировать https://www.mediafire.com/file/zpspcn2fo9fwcr6/TestCall.7z/file и его ненадо игрой запускать, а просто кликом или из консоли, если будет глючить, то пробуй от админа.

 

_________

 

Ща попробую добавить возвращаемое значение

 

__________

 

Я не совсем понимаю че оно там возвращает, но вот https://www.mediafire.com/file/7ttczekn1cx32t4/TestCall2.7z/file

 

[out] lpThreadId

A pointer to a variable that receives the thread identifier.

If this parameter is NULL, the thread identifier is not returned.

Return value

If the function succeeds, the return value is a handle to the new thread.

If the function fails, the return value is NULL. To get extended error information, call

_________

 

Тебе наверное проще будет передать параметром запуска на старте указатель на bitmap, а уж прочесть его думаю проще будет чем с потоками возиться.

Ссылка на комментарий

, У тебя там дебагедиторы для Fallout 2 вроде вызывают какието функции в движке, где глянуть его исходники? может тогда сделаю по человечески вызов функции

Ссылка на комментарий

У тебя там дебагедиторы для Fallout 2 вроде вызывают какието функции в движке

нет такого, чтобы кто-то стронний вызывал функции движка.

https://github.com/FakelsHub/sFall-X/blob/devUnofficial/DebugEditor/DebugEditor.cs

там через открытые сокеты вроде инфа передается.

 

вот так в в sfall открывается и происходит обмен

https://github.com/FakelsHub/sFall-X/blob/devUnofficial/sfall/Modules/DebugEditor.cpp#L255

если это сделать то в тебя можно передать bmp массив.

или это не сработает потому что будет сдохнуто при краше.

Ссылка на комментарий

Тебе наверное проще будет передать параметром запуска на старте указатель на bitmap

неполучится.

 

Я не совсем понимаю че оно там возвращает, но вот

ты нето сделал, нужно полнофункциональную с вызовом функции.

 

я так понимаю что после краша что нельзя вызвать функцию? в чем загвоздка.

Ссылка на комментарий

неполучится.

Почему нет? тыже говорил оно гдето в памяти есть, мне останется только  вот этим считывать с неким интервалом https://www.autoitscript.com/autoit3/docs/libfunctions/_WinAPI_ReadProcessMemory.htm или даже на крашнутой игре получится считать. Мне достаточно будет $pBaseAddress, остальное в принципе смогу и сам если рядом будут значения weight height итп

 

в чем загвоздка.

наверно в этом

 

The ExitProcess, ExitThread, CreateThread, CreateRemoteThread functions, and a process that is starting (as the result of a CreateProcess call) are serialized between each other within a process. Only one of these events occurs in an address space at a time. This means the following restrictions hold:

  • During process startup and DLL initialization routines, new threads can be created, but they do not begin execution until DLL initialization is done for the process.
  • Only one thread in a process can be in a DLL initialization or detach routine at a time.
  • ExitProcess returns after all threads have completed their DLL initialization or detach routines.
Ссылка на комментарий

ты нето сделал, нужно полнофункциональную с вызовом функции.

Ну я еще могу передать в функцию указатель через CreateRemoteThread, на этом все. указатель к примеру можно сделать на результат функции VirtualAllocEx. Кароче можно цирк с конями устраивать используя обе эти функции.

 

________

 

Почитай на досуге, довольно интересно https://www.elastic.co/blog/ten-process-injection-techniques-technical-survey-common-and-trending-process

Ссылка на комментарий

Также заметил, на версии 2.6 , если отчет не отправить, то он потом при выходе опять надоедает отправить его. Поправил?

там у тебя действително баг - я никакгго отчета нехочу но он там потом пытается что-то отправить.

Ссылка на комментарий

- я никакгго отчета нехочу но он там потом пытается что-то отправить.

Не пытается, а напоминает при выходе из игры что в каталоге с игрой лежит крашрепорт который не отправили.

Ссылка на комментарий

а че скрин только в оконом режиме делается?

[pluspost=25 сек.]

Не пытается, а напоминает при выходе из игры что в каталоге с игрой лежит крашрепорт который не отправили.

что напоминает? я не хочу никакой отчет! зачем он выводит окно отправить? - бред.

ты как че нибудь выдумешь эдако странное.

 

если ты хочешь

на случай если с первого раза оно не отправилось,

то и делай для которого пытались отправить, а он не отправился.

а не для того который просто там лежит и который и не желали отправлять.

 

если не понято: я не хочу ничего отправлять зачем оно постоянно спрашивает?

Ссылка на комментарий

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...