Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.06.2010, 00:08   #1
Scorpeon
Пользователь
 
Регистрация: 06.04.2007
Сообщений: 36
По умолчанию Непонятная ошибка!!!!

помогите пожалуйста разобраться с ошибкой!, очень срочно нужно, делаю курсавую

вообщем суть ошибки в следующем....
на одной из форм я с помощью TOpenDialog заускаю exe'ник macromedia Flash
все отлично все открываеться!
вот код:


но после того как я выполню этот код

procedure TForm1.Label3Click(Sender: TObject);
var h,pp : PChar;
s,p:string;
begin

if OpenDialog1.Execute then
Begin
h := Pchar(OpenDialog1.FileName);
WinExec(h,1);
s:=(ExtractFileDir((Application.Exe Name)));
end;
end;


на другой форме когда у меня прога хочет подключиться к текстовому файлу кидает ошибку!

Project TraningFlash.exe raised exception class EInOutError with message 'Inalid Filename'

Кидает ошибку на эту строчку
Reset(tutorials);


Вот остальной код этой формы:

var
Form2: TForm2;
tutorials: TextFile;

....

procedure TForm2.ComboBox1Change(Sender: TObject);
var
s:string;
n,i,p:integer;
begin
AssignFile(tutorials,'data\tutorial s.txt');
nst:=ComboBox1.ItemIndex;
st:=ComboBox1.Items[nst];
Reset(tutorials);
i:=1;
while not eof(tutorials) do
begin
ReadLn(tutorials,s);
razbor(s,k1,k2,k3,k4,k5,k6);
if k1=st then
begin
StringGrid1.Cells[1,i]:=k2;
inc(i);
end;
end;
StringGrid1.RowCount:=i;
if StringGrid1.RowCount>1 then StringGrid1.FixedRows:=1;
for p:=1 to i do
begin
StringGrid1.Cells[0,p]:=inttostr(p);
end;
closefile(tutorials);
end;



В чем может быть ошибка????
Scorpeon вне форума Ответить с цитированием
Старый 12.06.2010, 00:19   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
AssignFile(tutorials,ExtractFilePath(ParamStr(0))+'data\tutorial s.txt');
изучите разницу между относительными путями и абсолютными.
OpenDialog меняет текущую папку...поэтому относительные пути терь указывают не туда.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.06.2010, 00:34   #3
Scorpeon
Пользователь
 
Регистрация: 06.04.2007
Сообщений: 36
По умолчанию

Пепел Феникса

спасибо большое..... теперь все ясно

жаль блин в моей проге оч много относительных путей, над будет чет думать)))
Scorpeon вне форума Ответить с цитированием
Старый 12.06.2010, 00:58   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

вызовов диалогов меньше?
тогда думаю пригодятся
такие функции.
Код:
function GetCurDir:string;
begin
 SetLength(Result,256);
 SetLength(Result,GetCurrentDirectory(PChar(Result),256));
end;

procedure SetCurDir(Dir:string);
begin
 SetCurrentDirectory(PChar(Dir));
end;
можно запоминать(первая функция) до Dialog.Execute потом вернуть(вторая)
а можно в принипе только возвращать (SetCurDir(ExtractFilePath(ParamStr (0)))) после Execute(не важно что вернет)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 14.06.2010, 01:23   #5
Scorpeon
Пользователь
 
Регистрация: 06.04.2007
Сообщений: 36
По умолчанию

Пепел Феникса

Спасибо тебе огромное!! все работает!) ты меня избавил от большого гемороя)
Scorpeon вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
(СИ)непонятная ошибка. RZMTZM Помощь студентам 7 04.02.2010 02:49
Непонятная ошибка. jojahti Общие вопросы C/C++ 4 05.09.2009 20:39
Непонятная ошибка. program123 Общие вопросы Delphi 12 12.04.2009 23:07
Непонятная ошибка Juri Помощь студентам 6 07.11.2008 19:28
Непонятная ошибка RealSHELS Общие вопросы Delphi 16 24.10.2008 20:49