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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 07.03.2009, 16:56   #1
Deceased
Пользователь
 
Аватар для Deceased
 
Регистрация: 13.12.2007
Сообщений: 44
По умолчанию пишу текстовик. как открыть файл на лету?

День добрый.

Пишу текстовый редактор наподобие виндосовского notepad.exe

у меня на форме: mainmenu1, opendialog1, savedialog1, memo1.
простейшие функции: открыть-редактировать сохранить.

вопрос: как сделать так, чтобы когда я скомпилирую файл (mynotepad.exe) открывал текстовые документы на лету?
В смысле, тыкаю на 123.txt правой кнопкой- открыть с помощью - mynotepad.exe - должна открываться программа, содержимое должно подгружаться в memo1, как так сделать?

заранее спасибо.
Deceased вне форума
Старый 07.03.2009, 17:03   #2
Granus
С++
Форумчанин
 
Аватар для Granus
 
Регистрация: 22.09.2008
Сообщений: 791
По умолчанию

имена файлов передаются ЕХЕ как параметры
paramCount - их кол-во
paramstr(i) - параметр номер i
Форматируйте код, будьте людьми.
Granus вне форума
Старый 07.03.2009, 17:04   #3
Granus
С++
Форумчанин
 
Аватар для Granus
 
Регистрация: 22.09.2008
Сообщений: 791
По умолчанию

Код:
Memo1.Lines.LoadFromFile(ParamStr(1));
ParamStr(0) - сама прога
Форматируйте код, будьте людьми.
Granus вне форума
Старый 07.03.2009, 17:05   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Чуть побольше внимательности - посмотреть похожие темы.
Там все расписано:
Как открыть файл своей программой
http://programmersforum.ru/showthread.php?t=2660
mihali4 вне форума
Старый 07.03.2009, 17:05   #5
Granus
С++
Форумчанин
 
Аватар для Granus
 
Регистрация: 22.09.2008
Сообщений: 791
По умолчанию

не забудь проверить, были ли переданы какие то параметры
Код:
if ParamCount>0 then...
иначе ошибка будет)
Форматируйте код, будьте людьми.
Granus вне форума
Старый 07.03.2009, 18:26   #6
Deceased
Пользователь
 
Аватар для Deceased
 
Регистрация: 13.12.2007
Сообщений: 44
По умолчанию

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

Код:
memo1.Lines.LoadFromFile(paramstr(1));
безо всяких If

если ставить if ParamCount>0 then ничего не произойдёт.
Вы не могли бы немного это прокоментировать?


mihali4, сорри, пропустил тему. да там тоже не особо..
Deceased вне форума
Старый 07.03.2009, 19:19   #7
Granus
С++
Форумчанин
 
Аватар для Granus
 
Регистрация: 22.09.2008
Сообщений: 791
По умолчанию

Код:
  if ParamCount>0 then
    Memo1.Lines.LoadFromFile(ParamStr(1));
должно работать)
если не пашет, скинь исходник
Форматируйте код, будьте людьми.
Granus вне форума
Старый 07.03.2009, 19:45   #8
Deceased
Пользователь
 
Аватар для Deceased
 
Регистрация: 13.12.2007
Сообщений: 44
По умолчанию

Короче выявил такую штуку.
Если запускать в делфе с условием if ParamCount>0 then то всё будет нормально. Если откомпилировать с этим условием - то при открытии с помощью готового экзешника ничего в мемо из файла импортироваться не будет.

Если параметр if ParamCount>0 then не вставлять, то при запуске в делфе он будет выдавать ошибки, но если таким образом скомпилировать - всё будет работать на ура.

Исходники прилагаю, но там ничего интересного, только то что я сказал.
Вложения
Тип файла: zip !.zip (12.5 Кб, 16 просмотров)
Deceased вне форума
Старый 07.03.2009, 19:50   #9
Granus
С++
Форумчанин
 
Аватар для Granus
 
Регистрация: 22.09.2008
Сообщений: 791
По умолчанию

Цитата:
то при открытии с помощью готового экзешника ничего в мемо из файла импортироваться не будет.
просто открытии?)
чисто ЕХЕшника, без файлов?)
Форматируйте код, будьте людьми.
Granus вне форума
Старый 07.03.2009, 19:52   #10
Granus
С++
Форумчанин
 
Аватар для Granus
 
Регистрация: 22.09.2008
Сообщений: 791
По умолчанию

как вариант, на всякий случай
Код:
  try
    Memo1.Lines.LoadFromFile(ParamStr(1));
  except
  end;
Форматируйте код, будьте людьми.
Granus вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как открыть файл.txt Sergeu Общие вопросы Delphi 1 25.09.2008 13:24
ПИШУ ПРОГРАММУкак в паскале открыть и отредактировать файл Povar Паскаль, Turbo Pascal, PascalABC.NET 4 28.04.2008 10:06
Как открыть файл в Excel globalhunter Общие вопросы Delphi 2 11.02.2008 01:30
как открыть файл через прогу? ЧИЖ Общие вопросы Delphi 12 29.05.2007 17:45