neos eureka s r l что это за папка

Как узнать, почему программа внезапно закрывается?

neos eureka s r l что это за папка. Смотреть фото neos eureka s r l что это за папка. Смотреть картинку neos eureka s r l что это за папка. Картинка про neos eureka s r l что это за папка. Фото neos eureka s r l что это за папка

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

Когда программа может закрыться?

Приложение может завершаться:

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

Как диагностировать выход из приложения?

Диагностику можно проводить внутри процесса, установив хуки на ключевые функции:

Диагностику можно проводить из внешнего процесса:

Вы можете использовать EurekaLog для диагностики как из, так и извне процесса. Сделать вы это можете даже не покупая лицензию. Для диагностики изнутри процесса вы можете использовать редакцию Trial, а для диагностики извне процесса — бесплатный EurekaLog Tools Pack.

Диагностика внутри процесса

Когда вы получили отчёт — открываете его как обычно, в EurekaLog Viewer. В отчёте будет стек вызова в момент выхода из приложения, например:

Диагностика внешним отладчиком

Вместе с EurekaLog, а также с EurekaLog Tools Pack устанавливается утилита Threads Snapshot, которая предназначена для захвата стеков всех потоков приложения в определённый момент времени.

Вы можете зарегистрировать утилиту Threads Snapshot в качестве внешнего отладчика для мониторинга выхода из процесса:

Где Project1.exe — в точности тот же параметр, который вы указывали в п2. Эта команда отменит регистрацию мониторинга.

В результате будет создан обычный EurekaLog отчёт, в котором стек может выглядеть как-то так:

Что ещё можно сделать?

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

Источник

Delphi Notes

Заметки Delphi + Oracle программиста

Страницы

пятница, 18 марта 2011 г.

Опыт внедрения EurekaLog

Недавно наша компания приобрела лицензию на библиотеку EurekaLog (далее – EL). Что это такое, наверное Вы уже знаете, а если не знаете – то самое время поинтересоваться этим…

Этот пост я решил написать, чтобы обозначить проблемы, с которыми я столкнулся, при внедрении библиотеки. И в первую очередь адресую его GunSmoker’у.

Немного лирики. Я работаю с небольшой группой разработчиков над одним Проектом. Этот проект состоит из разных частей, грубо можно выявить такие категории:

И вот клиентских приложений у нас аж девять штук. Для поддержания жизнедеятельности этих приложений у нас:

Итак, задача, которую я себе поставил, состояла в следующем:

Первое, что мне не понравилось, так это то, что на сайте для скачивания доступна лишь инсталляшка, которая при установке лишь спрашивает конечный каталог для сохранения всех файлов. Я был немного удивлён, что нет отдельного архива с исходниками. Ну ладно, мелочь, установил. Скопировал все установленные исходники в отдельный каталог и деинсталлировал. Разобрался как, установить EL ручками. Нужно мне это для того, чтобы программисты наши могли просто обновившись из SVN продолжить работу, а не скачивать отдельно дистрибутив и ещё устанавливать его.

Дальше – лучше. EL умная библиотека, и при активации самой себя в настройках delphi-проекта правит главный файл проекта (.dpr для Delphi7), добавляя себя в uses. Это с одной стороны очень удобно. Более того, EL умеет добавлять себя в uses не в самое начало, а после FastMM4, например. Это очень даже здорово. Только есть одно но. Напомню, что у нас проектов много. И мы используем набор библиотек, типа FastMM4, VCLFixPack и т.п. И чтобы при включении/исключении подобных библиотек не править каждый dpr-файл, у нас выделен отдельный модуль… назовём его ProjectAddons.pas. Этот модуль есть во всех проектах и стоит на первом месте. И именно в uses ProjectAddons.pas я планировал включить модуль ExceptionLog. Ну ладно, исходники есть (я всегда при покупке библиотек выбираю версию с исходниками), отключить автодобавление – дело техники. Правда это уже не красиво, лезть в исходник сторонней библиотеки…

Ещё раз я столкнулся с автодобавлением в uses уже при запуске скрипта сборки приложений вне IDE Delphi. Но тут тоже дело техники, достаточно перекомпилировать ecc32.exe.

Третий момент. Настройки EL сохраняются вместе с настройками проекта (в cfg-файл для Delphi7 и ранее). Это вполне логичное решение. Для сборки приложения вне IDE (используя ecc32), есть возможность указания отдельного файла с настройками, что тоже вполне оправдано. В итоге, достаточно настроить EL один раз, сохранить настройки в отдельный файл, и сервер сборки будет выкладывать файлы проектов с одинаковыми настройками. Однако на компьютерах разработчиков, при компиляции приложений из IDE, настройки подхватываются не оттуда. Опять же, проблема синхронизации – надо отслеживать девять (по числу приложений) файлов настроек. Именно этот момент я хочу предложить разработчикам EurekaLog реализовать по другому, а именно: в cfg-файле проекта хранить не все настройки EL, а только лишь ссылку на файл с настройками EL.

Ну и последний момент, который вынудил меня внести ещё две маленькие правки в исходный текст библиотеки. У нас для регистрации проблем и ошибок используется система баг-треккинга mantis. Поэтому EL я настроил так, чтобы отчёт об ошибках отсылался в mantis. И вот тут небольшая несуразица. В терминологии мантиса – у нас один Проект, просто приложений несколько. Когда пользователи добавляют вопросы в Проект, они указывают (при необходимости) приложение в отдельное поле. И вот настроить EL так, чтобы при создании вопроса в мантисе можно было указать приложение – оказалось не возможным, по причине того, что приложения в мантисе выбираются из выпадающего списка, а названия в этом списке не совсем совпадают с названиями приложений. Простое решение, которое пришло в голову – это скорректировать заголовок создаваемого вопроса. Т.е. вместо “[v – ]” я сделал так, чтобы подставлялось “[ v – ]”. Жалко, что для этого нет отдельной настройки в EL.

В общем, потратил я на всё это дело какое-то время. Плюс повозился с тонкой настройкой обработки конкретных исключений. Пришлось ещё раз проявить хитрость, из-за особенности использования некоторых потоков, которые запускаются по WaitFor, и дублируют Exception, который не обработался потоком…

Источник

. when altering one’s mind becomes as easy as programming a computer, what does it mean to be human.

6 января 2010 г.

Советы и трюки в EurekaLog, часть 1

Многие наши клиенты часто спрашивают, как сделать различные вещи с EurekaLog. Ну, у нас есть документация (chm-файл, а также online), которая описывает опубликованный интерфейс (функции и т.п.), который вы можете использовать для смены поведения по-умолчанию. Это документация в «стиле словаря». Чтобы использовать её, вам нужно изучить все кусочки и придумать способ, как сложить их вместе, чтобы получить интересное/нужное поведение. Кажется, что это слишком много работы для типичного человека, потому что все продолжают задавать простейшие вопросы типа «Моё приложение работает в окружении без оператора. Как я могу отключить диалог об ошибке EurekaLog?».

A: Мы рекомендуем использовать проверки IFDEF, например:
Или же вы можете использовать эти функции (в модуле ExceptionLog )
Но использование функций будет означать внедрение кода EurekaLog в ваше приложение, даже если EurekaLog была отключена.
Описание функций вы можете найти в документации (http://www.eurekalog.com/help/eurekalog/).

Заметьте, что есть разница между «проект был скомпилирован без EurekaLog» и «в проекте есть EurekaLog, но она не активна».

Q: Как я могу отправлять отчёт автоматически, без диалога (который требует вмешательство оператора)?

A: Есть как минимум три способа это сделать.

1. Установить «Dialog type» в «(none)». Эта опция размещается на вкладке «Exceptions dialogs». Этот способ отключит диалог для всех исключений.

neos eureka s r l что это за папка. Смотреть фото neos eureka s r l что это за папка. Смотреть картинку neos eureka s r l что это за папка. Картинка про neos eureka s r l что это за папка. Фото neos eureka s r l что это за папка
Вы также можете сделать это в run-time: CurrentEurekaLogOptions.ExceptionDialogType := edtNone (модуля ExceptionLog и ECore ).

3. Вы можете использовать событие ExceptionActionNotify. Вы можете присвоить свой обработчик, где вы будете смотреть на события типа atShowingExceptionInfo и atShowedExceptionInfo.
Чтобы заблокировать диалог вы устанавливаете Execute := False для atShowingExceptionInfo и Execute := True для atShowedExceptionInfo.
См. также другие примеры.

Q: Я хочу игнорировать определённое исключение. Как я могу это сделать?

neos eureka s r l что это за папка. Смотреть фото neos eureka s r l что это за папка. Смотреть картинку neos eureka s r l что это за папка. Картинка про neos eureka s r l что это за папка. Фото neos eureka s r l что это за папка
Введите » EIdCmdTCPClientConnectError » в поле «Class».

Оставив «Handler» в состоянии «EurekaLog», вы сможет изменить поведение EurekaLog для этого типа исключений. Например, вы можете не отключать создание лога (для диагностики), но не хотите показывать диалог. В этом случае просто переключите «Dialog» в «None».

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

Q: Моё приложение работает в окружении без доступа к Интернету. Я хочу собирать логи вручную в какую-нибудь базу данных. Как мне это сделать?

Q: Как я могу узнать размещение файла с отчётами в run-time?

A: Используйте этот код:

Q: Куда мне поместить код для сохранения отчёта в мою собственную БД?

A: Вероятно, действие atSavedLogFile в обработчике события ExceptionActionNotify будет неплохим местом.

Заметьте, что если отладочная информация не доступна для компонента, то вы не сможете получить текстовое описание кода: имена процедур, а иногда и имена модулей. В этом случае неплохим вариантом будет вынос всего глючного кода в отдельную DLL, так что вы смогли бы проверять только имена модулей.

Конечно же, в самом крайнем случае, у вас всегда есть проверка «в лоб», например:

Q: Как я могу локализовать сообщения EurekaLog?

Если вы хотите использовать другие утилиты для локализации (типа TsiLang или dxGetText) или ITE – то, хотя у нас нет прямой поддержки в EurekaLog v6 (планируется в v7), но вы можете использовать обходной путь типа:

Источник

Delphi Seattle, ошибка компиляции: модуль F2051 System.SysUtils был скомпилирован с другой версией «».GetMappedFileName

с некоторых дней произошло что-то странное.

Проблема:

Я всегда получаю “Ошибка компиляции: F2051 Unit System.SysUtils был скомпилирован с другой версией” “.GetMappedFileName” Нет точной строки кода, чтобы упомянуть. Также та же проблема, если я делаю простой проект только с одним вызовом команды sysutils.

Наша ситуация: я и мой коллеж развиваются по тому же проекту. Мы используем JEDI для обмена нашими источниками и отслеживания изменений.

LAst, я загружал его измененные источники. Все прошло хорошо, и я был готов продолжать.

Я обновил все свои файлы и попытался скомпилировать, создать и запустить новые источники на моем компьютере.

Потом стало странно. При компиляции я получил эту ошибку:

Я проверил наши версии delphi standard lib, а также версии наших других компонентов, установленных и все соответствует. Затем я пошел в интернет-магазин покупок. Я нашел некоторые подобные проблемы, но не возможные решения для меня работали…

Вот некоторые из моих попыток:

Я также попробовал поиск “dir/s”, чтобы найти разные (неправильные?) Версии System.SysUtils. *

Вы найдете мою библиотеку и путь к просмотру в конце этого сообщения.

Некоторые из интернет-сайтов, которые я пытался решить:

У кого-нибудь есть идея или подсказка, чтобы избавиться от этого. Потому что я не могу продолжать ни один из моих проектов, так как это произошло.

Это мой путь к библиотеке для Win32:

Это мой путь к просмотру:

Проблема решена. Был один экземпляр в пути библиотеки, который отвечал за проблему.

Я отключил “C:\Program Files (x86)\Embarcadero\Studio\17.0\source\rtl\win;” из библиотеки, и все, похоже, сейчас работают.

Теперь моя задача – посмотреть, почему этот файл был в моей библиотеке от моего предшественника и попытаться посмотреть, есть ли в этом каталоге какие-либо “странные” файлы pas/dcu, поэтому это необходимо в пути. Но теперь это моя работа, спасибо всем, кто помог мне с некоторыми подсказками, чтобы решить проблему.

Итак, похоже, что я потерял много времени, сначала просмотрев другие вещи, а не отключив 1 на один из экземпляров в моем пути к библиотеке. Это совет на сегодня 🙂

Источник

Publishers

A guide to uninstall EurekaLog 7.2.1 from your system

The following executable files are incorporated in EurekaLog 7.2.1. They occupy 81.46 MB ( 85414096 bytes) on disk.

The information on this page is only about version 7.2.1.0 of EurekaLog 7.2.1.

How to erase EurekaLog 7.2.1 from your computer with the help of Advanced Uninstaller PRO

EurekaLog 7.2.1 is an application marketed by Neos Eureka S.r.l.. Sometimes, people try to remove this program. Sometimes this is troublesome because deleting this manually takes some advanced knowledge regarding removing Windows applications by hand. The best QUICK procedure to remove EurekaLog 7.2.1 is to use Advanced Uninstaller PRO. Take the following steps on how to do this:

1. If you don’t have Advanced Uninstaller PRO already installed on your PC, install it. This is a good step because Advanced Uninstaller PRO is a very useful uninstaller and general utility to optimize your system.

3. Press the General Tools button
neos eureka s r l что это за папка. Смотреть фото neos eureka s r l что это за папка. Смотреть картинку neos eureka s r l что это за папка. Картинка про neos eureka s r l что это за папка. Фото neos eureka s r l что это за папка

4. Activate the Uninstall Programs button
neos eureka s r l что это за папка. Смотреть фото neos eureka s r l что это за папка. Смотреть картинку neos eureka s r l что это за папка. Картинка про neos eureka s r l что это за папка. Фото neos eureka s r l что это за папка

5. All the applications existing on your PC will appear

6. Navigate the list of applications until you locate EurekaLog 7.2.1 or simply click the Search field and type in «EurekaLog 7.2.1». If it is installed on your PC the EurekaLog 7.2.1 app will be found very quickly. When you click EurekaLog 7.2.1 in the list of programs, the following data regarding the application is available to you:

8. After removing EurekaLog 7.2.1, Advanced Uninstaller PRO will offer to run an additional cleanup. Click Next to start the cleanup. All the items of EurekaLog 7.2.1 that have been left behind will be found and you will be able to delete them. By uninstalling EurekaLog 7.2.1 with Advanced Uninstaller PRO, you can be sure that no registry entries, files or folders are left behind on your disk.

Your system will remain clean, speedy and ready to run without errors or problems.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *