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

Вниз

Не работает дебагер. ((   Найти похожие ветки 

 
lod   (2008-03-14 09:27) [0]

Точки останова не срабатывают, трасировка не идёт. Пробовал полностью переустановить делфи не помогло. Помогите, не знаю что делать, неохото переустанавливать винду.


 
Ega23 ©   (2008-03-14 09:53) [1]

dll отлаживаешь?  :)


 
Thrasher ©   (2008-03-14 10:06) [2]

А в опциях компилятора не прописано часом - убрать Debug Info?


 
clickmaker ©   (2008-03-14 10:06) [3]


> неохото переустанавливать винду

а придется


 
Ega23 ©   (2008-03-14 10:14) [4]

Надо комп менять. Это всё железо виновато.


 
DrPass ©   (2008-03-14 10:17) [5]


> Надо комп менять. Это всё железо виновато.

Достаточно поменять монитор и флоппи-дисковод, должно помочь


 
Ega23 ©   (2008-03-14 10:23) [6]


> Достаточно поменять монитор и флоппи-дисковод, должно помочь


Возможно ещё мышь глючит. Я бы драйвер мыши переустановил.


 
data ©   (2008-03-14 10:27) [7]

у меня несколько раз такая ситуация излечивалась полной пересборкой проекта - снести все dcu, пересобрать
еще есть вероятность, что редактируешь и пытаешься отлаживать один файл, а в проекте собирается другой (например с тем же названием, но в другом каталоге)  :) - советую проверить, я тоже так попадала


 
clickmaker ©   (2008-03-14 10:27) [8]

и драйвер коврика тоже. Так, на всякий случай


 
Ega23 ©   (2008-03-14 10:30) [9]


> data ©   (14.03.08 10:27) [7]


Для dll ещё гемор есть. Там в явном виде надо модуль подгружать.


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

Ega23 ©   (14.03.08 10:23) [6]

Чтоб тебе на твои вопросы в "Базах" так отвечали


 
Ega23 ©   (2008-03-14 10:43) [11]


> Чтоб тебе на твои вопросы в "Базах" так отвечали


Я всё-таки как-то более конкретно стараюсь спрашивать.


 
lod   (2008-03-14 10:49) [12]

>> А в опциях компилятора не прописано часом - убрать Debug Info?
Убрано

>> dll отлаживаешь?  :)
Отлаживаю проект

>>у меня несколько раз такая ситуация излечивалась полной пересборкой проекта - снести все dcu,

Создаю вобще новый проект, и всё равно такая же хрень


 
clickmaker ©   (2008-03-14 10:50) [13]


> >> dll отлаживаешь?  :)
> Отлаживаю проект

а dll - это уже не проект, это - так, ни о чем? )
галки-то хоть стоят в группе debug в options -> compiler?


 
lod   (2008-03-14 10:55) [14]

>> а dll - это уже не проект, это - так, ни о чем? )
галки-то хоть стоят в группе debug в options -> compiler?

Ну не dll а програму, все настройки стоят по умолчанию, говорил ведь что переустанавливал делфу, все равно такая же хрень. Сравнивал настройки с другим компом на котором всё нормлаьно.


 
Ega23 ©   (2008-03-14 11:01) [15]

optimization отключал?


 
Ega23 ©   (2008-03-14 11:01) [16]

Вообще, блин, покажи код того, куда не встаёт дебаггер.


 
lod   (2008-03-14 11:17) [17]

>>Вообще, блин, покажи код того, куда не встаёт дебаггер.

procedure TForm1.Button1Click(Sender: TObject);
var
 i,n,m:integer;
begin
 n:=i+1; //сдесь точка останова
 m:=i-5;


 
clickmaker ©   (2008-03-14 11:18) [18]


> n:=i+1; //сдесь точка останова

как сам думаешь, чему будет равно i сразу после begin?


 
DrPass ©   (2008-03-14 11:19) [19]

1. После компиляции появляются ли синие точки напротив кода?
2. Если нет - удали dcu-файлы и еще поищи другой модуль с таким же именем, как в редакторе


 
DrPass ©   (2008-03-14 11:20) [20]


> как сам думаешь, чему будет равно i сразу после begin?

... но на отладчик это никак не повлияет ;-)


 
lod   (2008-03-14 11:26) [21]

кстати если поставить точку останова на какую нибудь процедуру то она срабатывает например
ShowMessage("sds");


 
lod   (2008-03-14 11:29) [22]

синие точки не видны (


 
Skyle ©   (2008-03-14 11:37) [23]


> lod   (14.03.08 11:29) [22]

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


 
lod   (2008-03-14 11:42) [24]

>>Если синие точки не видны, значит то, что там написано, видно только тебе, а не компилятору и отладчику.

Почему тогда при выполнении программы эти строки выполняються )


 
Ega23 ©   (2008-03-14 12:16) [25]


> Почему тогда при выполнении программы эти строки выполняються
> )


Блин, я же уже спрашивал про оптимизатор!

Они выполняются не во время выполнения программы, а на этапе компиляции.

procedure TForm1.Button1Click(Sender: TObject);
var
i,n,m:integer;
begin
n:=i+1; //сдесь точка останова
m:=i-5;


i тут изначально равно нулю. Спрашивается, нафига делать 2 лишних вычисления в ран-тайме, если можно на этапе компиляции задать n=1 и m=-5?


 
clickmaker ©   (2008-03-14 12:21) [26]


> i тут изначально равно нулю

не факт. т.е. там может оказаться 0, если очень повезет. Во время парада планет, например


 
lod   (2008-03-14 12:30) [27]

Ega23 ©  а где этот оптимизатор включать ?


 
No_Dead ©   (2008-03-14 12:32) [28]

> [27] lod   (14.03.08 12:30)

run->options->compiler->optimization (д.б. галочка)

(писАл по памяти%>)


 
Ega23 ©   (2008-03-14 12:35) [29]


> не факт. т.е. там может оказаться 0, если очень повезет.
>  


Ну при первом-то вызове - стопудово ноль будет...


 
lod   (2008-03-14 12:37) [30]

No_Dead © нашёл только не в run а project


 
No_Dead ©   (2008-03-14 12:38) [31]

> [29] Ega23 ©   (14.03.08 12:35)

значит у тебя удачное расположение планет%>


 
clickmaker ©   (2008-03-14 12:38) [32]


> Ну при первом-то вызове - стопудово ноль будет

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


 
Ega23 ©   (2008-03-14 12:41) [33]


> да с чего вдруг? это же локальная переменная. Они не инициализируются
>


А как же тогда

class function TObject.InitInstance(Instance: Pointer): TObject;
{$IFDEF PUREPASCAL}
var
 IntfTable: PInterfaceTable;
 ClassPtr: TClass;
 I: Integer;
begin
 Вот это вот?
 FillChar(Instance^, InstanceSize, 0);

?


 
clickmaker ©   (2008-03-14 12:45) [34]


> [33] Ega23 ©   (14.03.08 12:41)

а это здесь причем?
там локальная стековая переменная метода, а не поле класса


 
Ega23 ©   (2008-03-14 12:46) [35]


> clickmaker ©   (14.03.08 12:45) [34]


Ща пойду покурю, подумаю...


 
DrPass ©   (2008-03-14 12:50) [36]


> Ega23 ©   (14.03.08 12:46) [35]
>
> > clickmaker ©   (14.03.08 12:45) [34]
>
>
> Ща пойду покурю, подумаю...

Инициализируются нулями глобальные переменные, поля классов и управляемые типы (например, интерфейсы, строки). Локальные переменные простых типов никак не инициализируются.

> lod   (14.03.08 12:30) [27]
> Ega23 ©  а где этот оптимизатор включать ?

При отладке он наоборот, должен быть выключен. Но на функционирование отладчика, опять же, это никак не влияет. Сначала убедись, что у тебя включена Integrated Debugging, потом - что в проекте есть Debug Info.
После этого ищи "левые" модули с тем же именем на диске - вероятно, что отладчик видит их, а не твой код


 
Ega23 ©   (2008-03-14 12:55) [37]

Вот спасибо.
А я-то, дурак, считал, что они тоже зачищаются.
Нашёл ошибку.
:)


 
Alien1769 ©   (2008-03-14 12:59) [38]


> Вот спасибо.
> А я-то, дурак, считал, что они тоже зачищаются.
> Нашёл ошибку.

Олег, смена места работы на тебя плохо действует :)


 
El hombre   (2008-03-14 16:00) [39]

Удалено модератором



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

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

Наверх




Память: 0.56 MB
Время: 0.019 c
3-1196280048
Бэтман
2007-11-28 23:00
2008.04.27
Проблема с компонентом QuikReport


2-1207056885
Res
2008-04-01 17:34
2008.04.27
Послать


2-1207330381
Снежинка
2008-04-04 21:33
2008.04.27
Ошибка при добавление Combobox в DBGrid


15-1205313905
Георгий
2008-03-12 12:25
2008.04.27
AUTORUN.INF


2-1206948144
Armond
2008-03-31 11:22
2008.04.27
SQL