Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Регистрация своего расширения 
:(
    Опции темы
Vco
  Дата 15.2.2003, 05:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 311
Регистрация: 13.2.2003
Где: Москва

Репутация: нет
Всего: нет



Вот нашёл код которые регестрирует своё расширение в реестре. Сделал событие на кнопку. Вроде всё нормально, ещё в панели управление просмотрел все расширения, расширение появилось. Но. У меня есть как бы текстовой редактор, я регестрирую для него расширение tef (TextEditorFile) . Сохраняю файл например 1.tef . Нажимаю на него открываеться редактор а сожержимое непокахываеться..почему? Мне говорили всё дело с регестрацией расширения... bored.gif
И как сделать чтобы как тока программа запускалась создавалось расирение а в следующий раз эта процедура невыполнялась. Или сделать проверку существует ли такое расширение?

Это сообщение отредактировал(а) Vco - 15.2.2003, 05:37


--------------------
Я всегда где-то рядом...! user posted image
PM MAIL WWW ICQ   Вверх
Vco
Дата 15.2.2003, 05:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 311
Регистрация: 13.2.2003
Где: Москва

Репутация: нет
Всего: нет



А и ещё, можно вопросик) Как зделать подобно HTML-у при клике на надпись открывалась веб-страница? Т.е. хочу сделать раздел о программе и там указать сайт, и при клике открывался адрес.


--------------------
Я всегда где-то рядом...! user posted image
PM MAIL WWW ICQ   Вверх
Vex
Дата 15.2.2003, 06:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


кацапосрачмученiкъ
****


Профиль
Группа: Экс. модератор
Сообщений: 3103
Регистрация: 28.3.2002
Где: strawberry fields

Репутация: 1
Всего: 88



Цитата

А и ещё, можно вопросик) Как зделать подобно HTML-у при клике на надпись открывалась веб-страница? Т.е. хочу сделать раздел о программе и там указать сайт, и при клике открывался адрес.



В событие OnClick пишешь:

Код


ShellExecute(Handle, 'open', 'http://...',nil,nil,SW_RESTORE);






PS: Один топик - один вопрос


--------------------
Слава Україні.
PM   Вверх
Vco
Дата 15.2.2003, 06:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 311
Регистрация: 13.2.2003
Где: Москва

Репутация: нет
Всего: нет



Спасибо) . Ок, тада щас весь фоорум в моих топах будет т.к. только начал дельфи учить biggrin.gif


--------------------
Я всегда где-то рядом...! user posted image
PM MAIL WWW ICQ   Вверх
Vco
Дата 15.2.2003, 06:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 311
Регистрация: 13.2.2003
Где: Москва

Репутация: нет
Всего: нет



А какой юнит для shellexecute нужен? Пишет что незнает такой процедуры..


--------------------
Я всегда где-то рядом...! user posted image
PM MAIL WWW ICQ   Вверх
Guest_Вася
Дата 15.2.2003, 06:22 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата

Ок, тада щас весь фоорум в моих топах будет т.к. только начал дельфи учить


Не, для начала есть FAQ.
  Вверх
Vit
Дата 15.2.2003, 06:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 48
Всего: 207



Знаешь, без твоего кода как ты регистрирушь расширение ответить врядли можно.


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
Vex
Дата 15.2.2003, 06:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


кацапосрачмученiкъ
****


Профиль
Группа: Экс. модератор
Сообщений: 3103
Регистрация: 28.3.2002
Где: strawberry fields

Репутация: 1
Всего: 88



Цитата(Vco @ 14.2.2003, 21:20)
А какой юнит для shellexecute нужен? Пишет что незнает такой процедуры..

ShellAPI


--------------------
Слава Україні.
PM   Вверх
Vco
Дата 15.2.2003, 06:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 311
Регистрация: 13.2.2003
Где: Москва

Репутация: нет
Всего: нет



www.pascal.sources.ru ты там был, в faq напсано...
Код

Uses ..., Registry;

...

Procedure TForm1.RegisterFileType(prefix:String; exepfad:String);
Begin
With TRegistry.Create Do
 try
  RootKey:=HKEY_CLASSES_ROOT;
   { create a new key --> .pci }
  OpenKey('.'+prefix,True);
   { create a new value for this key --> pcifile }
  WriteString('',prefix+'file');
  CloseKey;
   { create a new key --> pcifile }
  CreateKey(prefix+'file');
   { create a new key pcifile\DefaultIcon }
  OpenKey(prefix+'file\DefaultIcon',True);
   { and create a value where the icon is stored --> c:\project1.exe,0 }
  WriteString('',exepfad+',0');
  CloseKey;
  OpenKey(prefix+'file\shell\open\command',True);
   { create value where exefile is stored --> c:\project1.exe "%1" }
  WriteString('',exepfad+' "%1"');
  CloseKey;
 finally
  Free;
 end;
end;

procedure TForm1.Button1Click(Sender: TObject);
Begin
RegisterFileType('pci','c:\project1.exe');
End;


To Вася: Читаю потихоньку...но всё же форум это хорошо smile.gif)

Это сообщение отредактировал(а) Vco - 15.2.2003, 06:43


--------------------
Я всегда где-то рядом...! user posted image
PM MAIL WWW ICQ   Вверх
Vit
Дата 15.2.2003, 06:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 48
Всего: 207



Вот мой код:
Код

procedure registerfiletype(ft,desc:string);
begin
   ft := '.'+ft;
   with Treginifile.create do
     try
       rootkey := hkey_classes_root;
       writestring(ft,'','MyType');
       writestring('MyType','',desc);
       writestring('MyType\shell\open\command','',Paramstr(0)+' "%1"');
   finally
       free;
   end;
end;



--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
Vco
Дата 15.2.2003, 06:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 311
Регистрация: 13.2.2003
Где: Москва

Репутация: нет
Всего: нет



э Выдаёт ошибку:Incopatible types:tobject and string.
Можешь написать своё пример с расширегием tef? Вот я написал твою процедуру, потом на событие onclick кнопки написал
registerfiletype('tef','c:\texteditor.exe');
Так? confused.gif


--------------------
Я всегда где-то рядом...! user posted image
PM MAIL WWW ICQ   Вверх
Vit
Дата 15.2.2003, 06:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 48
Всего: 207



Код

procedure registerfiletype(ft,desc:string);
begin
  ft := '.'+ft;
  with Treginifile.create do
    try
      rootkey := hkey_classes_root;
      writestring(ft,'','texteditor');
      writestring('texteditor','','texteditor');
      writestring('texteditor\shell\open\command','','desc "%1"');
  finally
      free;
  end;
end;




--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
Mikel
Дата 15.2.2003, 16:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 882
Регистрация: 30.3.2002
Где: Саратов

Репутация: 1
Всего: 2



А ты параметры загрузки смотришь?
(ParamStr(index))


--------------------
...so remember, it's better to burn out than to fade away
PM MAIL ICQ   Вверх
Vco
Дата 16.2.2003, 02:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 311
Регистрация: 13.2.2003
Где: Москва

Репутация: нет
Всего: нет



Неможешь объяснить подробнее? Просто я книгу читаю, там тока прошёл развитые элементы типа блонкнот, трэкбар и т.д. а реестр вообще нехатрагивал...просто спросил почему файл с таким расширением в текст редакторе не открываеться (то есть его содержимое), сказали добавь расширение в реестр..и что?? Всё равно файл то не отображаеться в редакторе... sad.gif


--------------------
Я всегда где-то рядом...! user posted image
PM MAIL WWW ICQ   Вверх
Song
Дата 16.2.2003, 05:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Sysman.ru
***


Профиль
Группа: Участник
Сообщений: 1095
Регистрация: 2.6.2002

Репутация: 2
Всего: 4



Блин, я тебе в аське говорил, что имя файла передаётся как параметр к твоей программе т.е. если у тебя редактор сделан на основе TMemo, тогда напиши загрузку файла в мемо: Memo1.Lines.LoadFromFile(ParamStr(1)); Сколько можно объяснять? Из-за такой ерунды устроил переполох здесь, на исходниках, да ещё и мне в аське все мозги проел!


--------------------
Прежде чем сказать "Невозможно", подумай, прав ли ты
PM WWW ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0578 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.