Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.10.12;
Скачать: CL | DM;

Вниз

Приложение падает на Application.Initialize;   Найти похожие ветки 

 
Германн ©   (2008-08-23 01:12) [40]


> ... но, может, окно надо искать после создания
> окна?
>


>
> begin
> Log("Application Started");
> if FindWindow(nil, "Ouverture") <> 0 then
> begin
>   MessageBox(0, "Приложение уже запущено", "Ouverture",
> 0);
>   exit;
> end;
> Log("FindWindow Result = Not Found");
> Log("Application.Initialize");
> Application.Initialize;
>

А при чем тут после или до? В приведенном коде нет никакого создания никакого окна.
Партизанщина продолжается. Автор опять подсунул какой-то огрызок вместо реального кода.


 
Servy ©   (2008-08-23 03:38) [41]

> begin
> Log("Application Started");
> if FindWindow(nil, "Ouverture") <> 0 then
> begin
>  MessageBox(0, "Приложение уже запущено", "Ouverture",
> 0);
>  exit;
> end;
> Log("FindWindow Result = Not Found");
> Log("Application.Initialize");
> Application.Initialize;


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

initialization
 Application := TApplication($12345678);


То есть, попортить указатель на Application.


 
Cobalt   (2008-08-23 08:44) [42]

Самый простой способ отладки - это отключать (закомментировать) функционал до тех пор, пока ошибка не прекратится.


 
keymaster ©   (2008-08-23 09:13) [43]


> Cobalt   (23.08.08 08:44) [42]
> Самый простой способ отладки - это отключать (закомментировать)
> функционал до тех пор, пока ошибка не прекратится.

Ошибка исчезает если закоментировать строку
Application.Initialization

> А при чем тут после или до? В приведенном коде нет никакого
> создания никакого окна.Партизанщина продолжается. Автор
> опять подсунул какой-то огрызок вместо реального кода.

Я привел реальный код из реального приложения.
При чём тут создание окна вообще?


 
Loginov Dmitry ©   (2008-08-23 10:15) [44]

> Ошибка исчезает если закоментировать строку
> Application.Initialization


Поставь галку "Use Debug DCUs" и посмотри что происходит при вызове Application.Initialization. Попасть можешь в следующие модули:
- SockApp.pas
- ComObj.pas
- ComServ.pas
- OleAuto.pas

Возможно, подключен еще какой-нибудь сторонный модуль, портящий значение System.InitProc.


 
sniknik ©   (2008-08-23 11:57) [45]

> Ошибка исчезает если закоментировать строку
> Application.Initialization
лучше закомментируй не ее, а то, что до этой строки, вплоть до begin, и проверь тогда ошибка исчезнет? это более показательно.


 
keymaster ©   (2008-08-23 15:49) [46]


> sniknik ©   (23.08.08 11:57) [45]
> > Ошибка исчезает если закоментировать строку> Application.
> Initializationлучше закомментируй не ее, а то, что до этой
> строки, вплоть до begin, и проверь тогда ошибка исчезнет?
>  это более показательно.

исчезает.
А если коментить эту строку - то появляется.


 
Andy BitOff ©   (2008-08-23 16:16) [47]

У тебя есть секции Initialization?


 
sniknik ©   (2008-08-23 16:45) [48]

> исчезает.
ну так, какие тогда сомнения?

> А если коментить эту строку - то появляется.
не удивительно, если закоментить инициализацию(создание обьектов в ней) то обращение к неинициализированному даст ошибку.


 
ketmar ©   (2008-08-23 17:58) [49]

ну блин. какая-то initialization попртила память. где-то не повезло, и попортила так, что смогло запуститься. а где-то повезло, и падает сразу. однако ж не понимаю, почему не пройтись при помощи отладчика по этому всему, раз уж бесплатного аналога valgrind под виндой нет.

---
All Your Base Are Belong to Us


 
Германн ©   (2008-08-23 18:31) [50]


> ketmar ©   (23.08.08 17:58) [49]

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



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

Текущий архив: 2008.10.12;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.022 c
1-1200479320
oleg_teacher
2008-01-16 13:28
2008.10.12
Проблема с мидасом


2-1220355260
vvrz
2008-09-02 15:34
2008.10.12
из Memo в Excel


2-1220250054
lord
2008-09-01 10:20
2008.10.12
Научите форму удалять.


15-1219145496
keymaster
2008-08-19 15:31
2008.10.12
Как правильнее?


2-1218980426
demon
2008-08-17 17:40
2008.10.12
Помогите разобраться с простейшей программой на API