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

Вниз

Проблема с MessageDlg!   Найти похожие ветки 

 
Dyakon_Frost ©   (2006-04-12 16:53) [0]

Здравствуйте!
Есть проблема:
Вот простенькая процедура:

Procedure Lab3Record(SG1: TStringGrid; SD1: TSaveDialog; OD1: TOpenDialog); stdcall;
var i,j: integer;
begin
if OD1.Execute then
 OD1.FileName;

AssignFile(f,OD1.FileName);
Reset(f);
for i := 1 to 5 do
for j := 1 to 5 do
 read(f,b[i,j]);

if MessageDlg("Хотите транспонировать матрицу",mtConfirmation,[mbYes, mbNo],0) = mrYes then

for i := 1 to 5 do
for j := 1 to 5 do
 c[i,j] := b[j,i];

for i := 1 to 10 do
for j := 1 to 10 do
 SG1.Cells[j-1,i-1] := FloatToStr(c[i,j]);

CloseFile(f);
end;


Проблема с MessageDlg - выдает ошибку, вопрос: в чем дело?

Заранее спасибо!


 
Fay ©   (2006-04-12 16:59) [1]

Если выдаёт ошибку, значит ты что-то где-то не так написал.


 
Плохиш ©   (2006-04-12 17:02) [2]


> if OD1.Execute then
>  OD1.FileName;

Это ещё что-такое?


 
Dyakon_Frost ©   (2006-04-12 17:02) [3]

Ну это понятно! Дело в том, что если писать в программе, то все нормально, а когда в dll-ке выдает ошибку. Видимо не подключил какой-то модуль, а вот какой вопрос!


 
Dyakon_Frost ©   (2006-04-12 17:04) [4]

"Плохиш" - указываю путь к файлу используя OpenDialog1!


 
Плохиш ©   (2006-04-12 17:04) [5]

ShareMem?


 
Fay ©   (2006-04-12 17:04) [6]

2 Dyakon_Frost ©   (12.04.06 17:02) [3]
> когда в dll-ке
ЧТО "в dll-ке" ? "Писать" или ЧТО ?


 
Dyakon_Frost ©   (2006-04-12 17:04) [7]

Вот модули которые подключаю:
 ShareMem,
 SysUtils,
 StdCtrls,
 Grids,
 Mask,
 ExtCtrls,
 Dialogs,
 Classes


 
Плохиш ©   (2006-04-12 17:04) [8]


> Dyakon_Frost ©   (12.04.06 17:04) [4]
> "Плохиш" - указываю путь к файлу используя OpenDialog1!

Правда?


 
Плохиш ©   (2006-04-12 17:07) [9]

Оригинально, не зависимо от того, что нажал пользователь в диалог, даже если он не выбрал ни какого имени файла, всё-равно выполнить(попытаться выполнить) весь код. Я плякал.


 
Dyakon_Frost ©   (2006-04-12 17:07) [10]

"Fay" - эту процедуру я пишу в dll - и именно в ней возникает ошибка, а если пишу MessageDlg в программе, то все ОК!


 
Плохиш ©   (2006-04-12 17:08) [11]


> Dyakon_Frost ©   (12.04.06 17:04) [7]
> Вот модули которые подключаю:

К стиральной машине подключаешь? Попробуй к электроплите.


 
Dyakon_Frost ©   (2006-04-12 17:08) [12]

"Плохиш" - да суть не в том, это не проблема!


 
vovnuke ©   (2006-04-12 17:09) [13]

1) а вот это

> then
>  OD1.FileName;

зачем?
2) а если не Execute, тогда что?


 
Dyakon_Frost ©   (2006-04-12 17:10) [14]

Какая разница, суть не в том, проблема в MessageDlg!


 
unknown ©   (2006-04-12 17:11) [15]


> Dyakon_Frost ©
>
>  if OD1.Execute then
>  OD1.FileName;

Это что делает, интересно?
И где проверка валидности файла?


 
unknown ©   (2006-04-12 17:12) [16]


> Dyakon_Frost ©   (12.04.06 17:10) [14]
> Какая разница, суть не в том, проблема в MessageDlg!

Нет, не в MessageDlg.


 
vovnuke ©   (2006-04-12 17:13) [17]

думаю дело в Screen-е


 
Dyakon_Frost ©   (2006-04-12 17:14) [18]


> Нет, не в MessageDlg.

Тогда в чем?


 
unknown ©   (2006-04-12 17:16) [19]


> Dyakon_Frost ©   (12.04.06 17:14) [18]
> > Нет, не в MessageDlg.
> Тогда в чем?


Скорее всего в этом:
AssignFile(f,OD1.FileName);
Reset(f);
for i := 1 to 5 do
for j := 1 to 5 do
read(f,b[i,j]);

Отладчиком пройтись не судьба?


 
Плохиш ©   (2006-04-12 17:17) [20]

Можно конечно спросить о используемых неизвестных переменных, да и о ошибке можно было бы спросить, только зачем? Совершенно не интересно.


 
Dyakon_Frost ©   (2006-04-12 17:17) [21]

Он даже и невключится так как пишет что ошибка в
if MessageDlg("asdasd",mtConfirmation,[mbYes,mbNo],0) = mrYes then


 
Dyakon_Frost ©   (2006-04-12 17:28) [22]

Ладно народ придеться разбираться самому!


 
Dyakon_Frost ©   (2006-04-12 17:42) [23]

Как всегда все эллементарно: надо подключить модуль Controls.
И сразу всем совет: "Не создавайте себе и другим проблем помелочам."
Это почти ко всем присутствующим относится!

Спасибо!


 
Плохиш ©   (2006-04-12 18:01) [24]

http://ln.com.ua/~openxs/articles/smart-questions-ru.html


 
Leonid Troyanovsky ©   (2006-04-12 21:52) [25]


> Плохиш ©   (12.04.06 18:01) [24]

> http://ln.com.ua/~openxs/articles/smart-questions-ru.html


Зашибись.
А как тут нах посылают?

--
Regards, LVT.


 
Германн ©   (2006-04-13 03:21) [26]


> Зашибись.
> А как тут нах посылают?

По разному. Как кому захочется.
А Вы собс-но об чём, Леонид?


 
Amoeba ©   (2006-04-13 09:38) [27]


> Зашибись.
> А как тут нах посылают?

Если надо кого либо туда послать, то посылай сюда: http://lleo.aha.ru/na/



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

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

Наверх




Память: 0.52 MB
Время: 0.031 c
2-1144925925
Случайный прохожий
2006-04-13 14:58
2006.04.30
Архивация в делфи


8-1133854292
unmi
2005-12-06 10:31
2006.04.30
как грузить иконки из dll?


15-1144205313
Бугага
2006-04-05 06:48
2006.04.30
Windows 98


2-1144680738
ctudent
2006-04-10 18:52
2006.04.30
Ошибка FFFFFFFFFF


4-1139556912
drpass
2006-02-10 10:35
2006.04.30
Перехват LockWorkstation