Главная страница
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.045 c
1-1140030805
Vovanchik
2006-02-15 22:13
2006.03.19
Программное сжатие картинки...


2-1141151460
Darkwing
2006-02-28 21:31
2006.03.19
Команды ассемблера под пентиум 4


2-1141456094
Der Nechk@ssoff
2006-03-04 10:08
2006.03.19
вывод файла


4-1135178763
Sasha73
2005-12-21 18:26
2006.03.19
На API диалоговое окно для ввода пароля? (звездочки)


15-1140501021
vidiv
2006-02-21 08:50
2006.03.19
"Пятьсотпятидесятимиллиметрового"