Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2012.02.05;
Скачать: [xml.tar.bz2];

Вниз

Отладка загрузки модулей - initialization..finalization   Найти похожие ветки 

 
Eraser ©   (2010-09-01 23:14) [0]

Такая проблема. При запуске приложения под Wine возникает "Runtime error 255 at 7BC3ED78". Ошибка происходит до первой строчки кода в dpr файле, соответственно она где-то в загрузке модулей. Каким-то образом это связано с COM. С наскока выяснить не удалось, при ближайшем рассмотрении тоже безрезультатно. Логи wine ничего внятного не говорят.

Подскажите, как грамотно отладить секции инициализации юнитов, в т.ч. генофондовских?


 
Джо ©   (2010-09-02 02:18) [1]

Use debug dcu не помогает? Не могу сейчас проверить.


 
Eraser ©   (2010-09-02 03:09) [2]

Бесполезно, никакой доп. информации не отображается. Беда в том, что под Wine я не могу запустить программу из IDE.


 
Германн ©   (2010-09-02 03:14) [3]


> Eraser ©   (02.09.10 03:09) [2]
>
> Бесполезно,

Посоветовал бы Эврику, но там тоже сейчас проблемы с суппортом.


 
Eraser ©   (2010-09-02 03:26) [4]

> [3] Германн ©   (02.09.10 03:14)

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


 
Eraser ©   (2010-09-02 03:43) [5]

> [3] Германн ©   (02.09.10 03:14)

Спасибо! Похоже то что нужно, исключения начали перехватываться, получил стек.


 
Германн ©   (2010-09-02 03:50) [6]


> Eraser ©   (02.09.10 03:26) [4]
>
> > [3] Германн ©   (02.09.10 03:14)
>
> я обычно использую бесплатный JCL, пробовал его проинициализировать
> как можно раньше в initialize одного из модулей, но все
> равно не удается раньше, чем получаю ошибку. скачиваю эврику,
>  посмотрим.
>

На эврику сейчас не стоит возлагать большие надежды. Она мне позавчера выдала Internal Error. Я попытался отправить в в техподдержку эту ошибку, но не смог. АА сказал в привате, что у них проблемы с почтой.
Но у тебя другое. Может поможет.


 
Eraser ©   (2010-09-02 04:42) [7]

> [6] Германн ©   (02.09.10 03:50)

Да внедрять её в проект я и не собираюсь, там не та специфика, эврика не пойдет, а вот решить сабжевую проблему помогла. Для тестирования самое оно.


 
Игорь Шевченко ©   (2010-09-02 18:08) [8]


> При запуске приложения под Wine возникает


под Wine не инициализируются глобальные переменные нулями


 
Leonid Troyanovsky ©   (2010-09-02 22:38) [9]


> Игорь Шевченко ©   (02.09.10 18:08) [8]

> под Wine не инициализируются глобальные переменные нулями

Казалось бы, что это задача компилятора.
Хотя, конечно, глобальные переменные - MD.

--
Regards, LVT.


 
Eraser ©   (2010-09-02 23:05) [10]

> [8] Игорь Шевченко ©   (02.09.10 18:08)

там в другом была основная проблема - при загрузке в одной их секций inialization возникало исключение, хотя оно и было обернутов try..finally в Wine приводило к краху приложения, описанном в 1 сообщении.
но, далее столкнулся с тем, что cryptoapi под Wine находиться еще в не рабочем состоянии, увы.


 
Плохиш ©   (2010-09-03 00:28) [11]


> Eraser ©   (02.09.10 23:05) [10]
>
> > [8] Игорь Шевченко ©   (02.09.10 18:08)
>
> там в другом была основная проблема - при загрузке в одной
> их секций inialization возникало исключение, хотя оно и
> было обернутов try..finally в Wine приводило к краху приложения

Ничего удивительного, необработанное исключение.

http://www.esanu.name/delphi/IDE/Runtime%20Error%20255.html


 
Eraser ©   (2010-09-03 02:21) [12]

в том то и дело, что обработанное. сбило с толку то, что в windows, в т.ч. под отладчиком все OK.


 
oxffff ©   (2010-09-03 09:31) [13]


> Leonid Troyanovsky ©   (02.09.10 22:38) [9]
>
> Хотя, конечно, глобальные переменные - MD.


Где можно ознакомится с этой аксиомой?


 
Игорь Шевченко ©   (2010-09-03 10:13) [14]


> Казалось бы, что это задача компилятора.


компилятор формирует сегмент .bss, под windows он обнуляется при загрузке


 
Плохиш ©   (2010-09-03 12:01) [15]


> Eraser ©   (03.09.10 02:21) [12]
>
> в том то и дело, что обработанное.

И кто ж его обработал?
try..finally - это не обработка исключения, читай описание.


 
Leonid Troyanovsky ©   (2010-09-03 16:41) [16]


> oxffff ©   (03.09.10 09:31) [13]

> Где можно ознакомится с этой аксиомой?

Это девиз :)

Глобальная переменная д.б. одна - Application,
а все остальное - в его полях/свойствах.

--
Regards, LVT.


 
oxffff ©   (2010-09-03 20:21) [17]


> Это девиз :)
>
> Глобальная переменная д.б. одна - Application,
> а все остальное - в его полях/свойствах.


Порой длинные indirect обращения или протаскание дополнительных параметров в методы может плохо ударить по производительности.

Поэтому во всем должна быть мера. IMHO


 
Eraser ©   (2010-09-03 20:37) [18]

Для синглтонов в принципе можно использовать глобальные переменные, хотя в последних версиях языка появилась возможность обойтись без этого.


 
Игорь Шевченко ©   (2010-09-03 20:40) [19]


> Порой длинные indirect обращения


Result := TApplicationConfigurationManager.GetInstance.ExceptionManager  

глаза сломаешь, пока такое прочтешь


 
Eraser ©   (2010-09-03 20:43) [20]

> [15] Плохиш ©   (03.09.10 12:01)

так меня удивляет тот момент, что в win никаких сообщений о крахе или исключениях не было ;-)


 
Плохиш ©   (2010-09-04 01:57) [21]


> Eraser ©   (03.09.10 20:43) [20]
>
> > [15] Плохиш ©   (03.09.10 12:01)
>
> так меня удивляет тот момент, что в win никаких сообщений
> о крахе или исключениях не было

Так в win, выходит, что никакого исключения и не было. Там с драйверами на оборудование всё в порядке.


 
Германн ©   (2010-09-04 02:11) [22]


> Плохиш ©   (04.09.10 01:57) [21]
>
>
> > Eraser ©   (03.09.10 20:43) [20]
> >
> > > [15] Плохиш ©   (03.09.10 12:01)
> >
> > так меня удивляет тот момент, что в win никаких сообщений
> > о крахе или исключениях не было
>
> Так в win, выходит, что никакого исключения и не было. Там
> с драйверами на оборудование всё в порядке.
>

Что-то как-то не верится, что Eraser © "влез не спросясь" в область драйверов на оборудование.


 
Плохиш ©   (2010-09-04 02:15) [23]


> Германн ©   (04.09.10 02:11) [22]

> Что-то как-то не верится, что Eraser © "влез не спросясь"
> в область драйверов на оборудование.

Это не он, а wine чего-то там не до инициализирует, я в [11] ссылку давал на описание ошибки.


 
Германн ©   (2010-09-04 02:46) [24]


> я в [11] ссылку давал на описание ошибки

Что-то мне кажется (крестился и не раз), что это описание весьма старое. А Eraser, по своему роду работ, всегда использует последние версии Дельфи и сравнительно современные компьютеры.
Если столь древнее описание (для Д3 и S3) годится и сейчас, то просто нет слов.


 
Eraser ©   (2010-09-04 02:53) [25]

> а wine чего-то там не до инициализирует

так оно и есть.
но все равно пока внедрение wine откладывается на неопределенный срок, cryptoapi пока там отказывается работать в той реализации что есть.


 
Плохиш ©   (2010-09-04 12:03) [26]


> Германн ©   (04.09.10 02:46) [24]

Описание я понял так, что если чего-то там не так и не понятно случилось, то вываливается системная ошибка 255 и разбирайтесь сами что не так ;-)



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2012.02.05;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.51 MB
Время: 0.003 c
2-1319714974
Очень Злой
2011-10-27 15:29
2012.02.05
Можно ли описать запись неизвестного заранее размера


15-1319009052
Handle
2011-10-19 11:24
2012.02.05
перевести фразу


15-1318883405
Юрий
2011-10-18 00:30
2012.02.05
С днем рождения ! 18 октября 2011 вторник


15-1319142235
777fender777
2011-10-21 00:23
2012.02.05
Delphi и Windows 7


11-1206198913
DJ_UZer
2008-03-22 18:15
2012.02.05
Горячие клавиши





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский