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

Вниз

открытие файла своей прогой   Найти похожие ветки 

 
Der Neck@ssoff   (2006-03-05 11:41) [0]

Здраствуйте! У меня вот в чем косяк: с помощью моей проги я сделал ранее не существовавший тип файла(он текстовый) и я хочу что бы он по умолчанию открывался через мою прогу(такая вещь как указание на ехе-шник через свойства файла не катит).Заранее спасибо.


 
Alarm ©   (2006-03-05 12:18) [1]

Попробуй дать "ранее не существующему типу файла" свое (отличное от стандартных) расширение. Думаю проблема снимется


 
АРІ   (2006-03-05 13:02) [2]

Не совсем понял: "такая вещь как указание на ехе-шник через свойства файла не катит".

Попробуйте так:


uses
 Registry;

procedure RegFileExtension(AExt, AInnerName, ADescription, AIconPath,
                                                         AApplication: string);
var
 Reg: TRegistry;
begin
 Reg := TRegistry.Create;
 try
   // Регистрация типа файла
   Reg.RootKey := HKEY_CLASSES_ROOT;
   Reg.OpenKey(AExt, true);
   Reg.WriteString("", AInnerName);
   Reg.CloseKey;

   // Регистрация описания...
   Reg.OpenKey(AInnerName, true);
   Reg.WriteString("", ADescription);
   // ...и иконки
   // Если файла приложения не будет "на месте" -
   // будет отображена стандартная иконка для незарегистрированных типов файлов
   Reg.OpenKey("DefaultIcon", true);
   Reg.WriteString("", AIconPath);
   Reg.CloseKey;

   // Регистрация приложения, используемого для открытия файла
   // Если на момент попытки открытия файла с расширением *.text,
   // файла приложения не будет "на месте" - оболочка ОС (XP) предложит
   // выбрать другое приложение
   Reg.OpenKey(AInnerName, true);
   Reg.OpenKey("shell\open\command", true);
   Reg.WriteString("", AApplication);
   Reg.CloseKey;
 finally
   Reg.Free;
 end;
end;


и использование:

 
RegFileExtension(".text",
                      "MyTextFile",
                      "Мой текстовый файл",
                      "c:\MyApplication.exe,0",
                      "c:\Myapplication.exe %1");


Возможно, это то, о чем Вы говорите.



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

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

Наверх




Память: 0.47 MB
Время: 0.032 c
3-1138252297
Андрей К.
2006-01-26 08:11
2006.03.19
строки в RadioGroup


15-1140501175
Ega23
2006-02-21 08:52
2006.03.19
С Днём рождения! 21 февраля


1-1139820130
AlanB
2006-02-13 11:42
2006.03.19
Очистка значения Edit.Text в цикле


2-1141445966
anubis
2006-03-04 07:19
2006.03.19
Дайте пожалуста свойства компомента TTable


2-1141203400
pound
2006-03-01 11:56
2006.03.19
сохранение данных