Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Настройки отладчика / 25 сообщений из 27, страница 1 из 2
29.06.2017, 09:49:21
    #39479484
Virtual Student
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
Добрый день!

Пытаюсь отладить приложение. Расставил точки останова. При старте приложения из IDE отладчик останавливает выполнение и выбрасывает в окно просмотра CPU... А хотелось бы чтобы пошаговое исполнение велось по строкам кода...

Подскажите, что я не так настроил в проекте или IDE ???
...
Рейтинг: 0 / 0
29.06.2017, 10:04:42
    #39479491
Virtual Student
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
Забыл написать...
Версия RAD Studio 10.2.
С отладкой других проектов такой вопрос не возникает.
...
Рейтинг: 0 / 0
29.06.2017, 10:18:19
    #39479497
krapotkin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
windows ?
...
Рейтинг: 0 / 0
29.06.2017, 12:13:50
    #39479588
Virtual Student
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
krapotkinwindows ?
Windows 7 x64
...
Рейтинг: 0 / 0
29.06.2017, 15:10:08
    #39479742
DesWind
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
Virtual Student,

Такое случается когда отладчик не может найти исходные тексты. В пустом приложении все также?
...
Рейтинг: 0 / 0
29.06.2017, 15:42:26
    #39479786
krapotkin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
ну либо с инициализацией что-то ну прямо совсем накосячено, что программа дает AV улетает по адресу вне кода
...
Рейтинг: 0 / 0
29.06.2017, 16:44:41
    #39479837
Virtual Student
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
DesWindVirtual Student,
Такое случается когда отладчик не может найти исходные тексты. В пустом приложении все также?
Самое противное, что соседний файл с модулем данных (в той же папке) дебажится как надо. А юнит главной формы ни в какую...
После первого косяка с вылетом в CPU и остальные ведут себя также, но при этом позволяют переходить к строкам кода...

Буду пытаться проинитить новый проект с теми же юниами постепенно...
...
Рейтинг: 0 / 0
29.06.2017, 16:47:19
    #39479839
Virtual Student
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
krapotkinну либо с инициализацией что-то ну прямо совсем накосячено, что программа дает AV улетает по адресу вне кода
Нет AV нет, но с инициализацией действительно накосячено...
Может заметите какую крамолу в коде?
Код: pascal
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.
label lExit;

begin
  // проверяем предыдущую копию приложения
  if AppPreviousCopyExists then goto lExit;

  // Создаем приложение
  Application.Initialize;

  // Разбираем командную строку
  stat.dyn.ParseCommandLine;

  // Задержка обновления действий
  // Помогает от загрузки процесора в режиме дочерних форм wsMaximized
  Application.ActionUpdateDelay := 50;

  // Создаем форму спрайта
  SetBlock('Загрузка модуля "Статистика"', 100, True);
  frmBlockWindow.Caption := 'Загрузка приложения';
  SetBlock('Создание среды...');

  Application.Title := 'АРМ "Энергетика" модуль "Статистика"';
//  TStyleManager.TrySetStyle('Windows10');
  // Создаем модуль данных
  Application.CreateForm(TSDM, SDM);
  // Соединяемся с базой данных
  SDM.Connected := True;
  // Проверяем авторизацию
  if SDM.LoadMain then

    Application.CreateForm(TMainWindowCS, MainWindowCS)
  else begin

    Application.Terminate;
  end;

  // Вынесено сюда, чтобы убрать вкладку спрайта из таскбара
  Application.MainFormOnTaskbar := True;
  Application.Run;

lExit:


Но аналогичная конструкция инициализации используется в нескольких других проекта, и все в порядке.
...
Рейтинг: 0 / 0
30.06.2017, 08:44:17
    #39480112
krapotkin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
Код: pascal
1.
if AppPreviousCopyExists then goto lExit;


сколько лет я уже не видел goto )))
Код: pascal
1.
if AppPreviousCopyExists then Exit;


несмотря на то, что я не люблю подобную многословность в DPR,
криминального тут ничего не видно

лично я обычно пытаюсь создать DM в конструкторе главной формы, потому что есть еще предварительные загрузки настроек (в том числе подключений к БД), и анализы параметров. Да и глобальные переменные это тоже часто зло.
Это, конечно, не догма, но тогда Application и DPR не приходится трогать...

имхо, если есть ошибка, то не здесь.
...
Рейтинг: 0 / 0
30.06.2017, 17:35:16
    #39480573
Virtual Student
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
krapotkin
Код: pascal
1.
if AppPreviousCopyExists then goto lExit;


сколько лет я уже не видел goto )))
Код: pascal
1.
if AppPreviousCopyExists then Exit;


несмотря на то, что я не люблю подобную многословность в DPR,
криминального тут ничего не видно

лично я обычно пытаюсь создать DM в конструкторе главной формы, потому что есть еще предварительные загрузки настроек (в том числе подключений к БД), и анализы параметров. Да и глобальные переменные это тоже часто зло.
Это, конечно, не догма, но тогда Application и DPR не приходится трогать...

имхо, если есть ошибка, то не здесь.
Спасибо за комментарий, ошибка потихоньку локализуется...
Часть проблемы была в сложной инициализации классовых конструкторов в подгружаемой библиотеке (bpl). Я её просто не заметил и не включил в RunTime загрузку приложения.

Итог: принципиально ошибка крылась в "не включении" библиотеки со сложной инициализацией, тянущей за собой еще пачку таких же. Как обычно, проблема на ровном месте, - невнимательность!..
...
Рейтинг: 0 / 0
30.06.2017, 17:43:05
    #39480582
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
bpl - зло.

Если уж так надо отдельный скомпилированный код то уж лучше DLL.
...
Рейтинг: 0 / 0
30.06.2017, 18:27:22
    #39480613
schi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
rgreatbpl - зло.

Если уж так надо отдельный скомпилированный код то уж лучше DLL.

Странное заявление. Смотря для каких задач.
...
Рейтинг: 0 / 0
30.06.2017, 19:06:09
    #39480632
white_nigger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
rgreatbpl - зло.

Если уж так надо отдельный скомпилированный код то уж лучше DLL.Расстрелять за такое заявление! :)

Кстати, проблемы с BPL-ками, случаем, не на Windows 10 CU ?
...
Рейтинг: 0 / 0
30.06.2017, 19:45:24
    #39480655
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
schirgreatbpl - зло.

Если уж так надо отдельный скомпилированный код то уж лучше DLL.

Странное заявление. Смотря для каких задач.
Я допускаю некоторые случаи когда использование BPL имеет свой смысл.
Но по мне так это уж очень редкий случай.

А во всех остальных случаях DLL гораздо надежней BPL а отдельный unit с кодом - гораздо удобней.

У BPL уж больше серьезные ограничения по совместимости с кодом, который их использует, что сильно урезает их возможную область применения.
...
Рейтинг: 0 / 0
30.06.2017, 20:04:26
    #39480661
чччД
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
BPL - зло, фреймы - зло, прямой доступ к табличкам БД - зло, энзвенка - зло, дженерики - зло...

Так бывает. Попробовал человек, не получилось. Или чужой плохой (или непонятный) код сопровождал, в котором "зло".
...
Рейтинг: 0 / 0
30.06.2017, 20:08:23
    #39480665
white_nigger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
rgreatЯ допускаю некоторые случаи когда использование BPL имеет свой смысл.
Но по мне так это уж очень редкий случай.

А во всех остальных случаях DLL гораздо надежней BPL а отдельный unit с кодом - гораздо удобней.

У BPL уж больше серьезные ограничения по совместимости с кодом, который их использует, что сильно урезает их возможную область применения.Есть одно но. BPL специально создан для избавления от головной боли у программера. Особенно использующего VCL. А вот по поводу работы с DLL интернет заполнен плачем по работе TAction, хинтов, шорткатов и т.д. Приходится народу бить в бубен шамана.

PS: Мне тут недавно саппорт вообще задачку подкидывал, человек из COBOL хотел из DLL показывать форму с нашими рибоном, ричём, преферансом и гейшами...
...
Рейтинг: 0 / 0
30.06.2017, 20:12:22
    #39480668
чччД
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
"Goto - зло". Доорались. А теперь гоуту в Красной книге СССР, вместе с СССР.
...
Рейтинг: 0 / 0
30.06.2017, 20:18:31
    #39480671
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
чччД,

Да не, goto нормальный оператор. Просто он не слишком удобен для програмиста.
Ибо надо аж в 3-х местах кодить.

А так как почти все прекрасно делается и без него то он и оказался в пролете.
...
Рейтинг: 0 / 0
30.06.2017, 20:21:01
    #39480673
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
white_nigger BPL специально создан для избавления от головной боли у программера. Особенно использующего VCL. А вот по поводу работы с DLL интернет заполнен плачем по работе TAction, хинтов, шорткатов и т.д. Приходится народу бить в бубен шамана.

PS: Мне тут недавно саппорт вообще задачку подкидывал, человек из COBOL хотел из DLL показывать форму с нашими рибоном, ричём, преферансом и гейшами...В таких случаях стоит подумать об OLE.
...
Рейтинг: 0 / 0
30.06.2017, 20:22:32
    #39480674
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
Я вот у себя вообще формы одного приложения на закладку в форме другого докирую, и ничего. :)
...
Рейтинг: 0 / 0
30.06.2017, 20:35:08
    #39480679
чччД
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
rgreatwhite_nigger BPL специально создан для избавления от головной боли у программера. Особенно использующего VCL. А вот по поводу работы с DLL интернет заполнен плачем по работе TAction, хинтов, шорткатов и т.д. Приходится народу бить в бубен шамана.

PS: Мне тут недавно саппорт вообще задачку подкидывал, человек из COBOL хотел из DLL показывать форму с нашими рибоном, ричём, преферансом и гейшами...В таких случаях стоит подумать об OLE.
OLE - зло! :)
...
Рейтинг: 0 / 0
04.07.2017, 19:43:39
    #39482717
Virtual Student
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
Подскажите, может кто знает!..
Можно ли, и как сбросить настройки конфигураций проекта (Debug и Release) к умолчанию?

После извращённых попыток настроить отладку под Windows 10 (с обновлением creators update) я вернулся на Win7 x64.
Долго под ней работал и все было гуд. Но сейчас, параметры конфигурации мне просто не дают выставить нужные флаги. В результате линковщик просто не добавляет отладочную информацию в exe и в библиотеки...

Может кому не лень сохранить настройки в файл (*.optset). Бросьте на почту пожалуйста.
...
Рейтинг: 0 / 0
04.07.2017, 21:32:46
    #39482768
$Name
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
Кто подскажет как правильно приготовить?

Написал
Код: plaintext
Out Directory =  v:\out\$(MSBuildProjectName)\$(Platform)\$(Config)\

Собралось в указанную папку
Код: plaintext
Shift-F9 = Success

Но
Код: plaintext
F9 = Error Could not find program, 'v:\out\%MSBuildProjectName%\Win32\Debug\proga.exe'

Что делать чтоб работало?
...
Рейтинг: 0 / 0
04.07.2017, 21:38:43
    #39482771
Virtual Student
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
$NameКто подскажет как правильно приготовить?

Написал
Код: plaintext
Out Directory =  v:\out\$(MSBuildProjectName)\$(Platform)\$(Config)\

Собралось в указанную папку
Код: plaintext
Shift-F9 = Success

Но
Код: plaintext
F9 = Error Could not find program, 'v:\out\%MSBuildProjectName%\Win32\Debug\proga.exe'

Что делать чтоб работало?

Я бы избавился от переменной $(MSBuildProjectName) и задал бы относительный путь аля "v:\Projects\<Папка проекта>\bin\$(Platform)\$(Config)".
...
Рейтинг: 0 / 0
04.07.2017, 21:48:25
    #39482774
&#36;Name
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Настройки отладчика
Virtual Student, хочу для всех новых проектов чтобы автоматом устанавливался ram-диск на выхлоп, а оно не фурычит. То есть на половину как-то.
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Настройки отладчика / 25 сообщений из 27, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]