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

Вниз

Приложение по умолчанию для определенного файла   Найти похожие ветки 

 
=Teddy=   (2007-01-29 09:17) [0]

Есть файл с некоторым расширением .ххх;Как сделать моё приложение по умолчанию для этого файла? Чтобы по щелчку на файл оно загружалось в это приложение.Помогите!


 
Ega23 ©   (2007-01-29 09:42) [1]


Ftype
Примеры
Приведенная ниже команда:

   ASSOC .pl=PerlScript
   FTYPE PerlScript=perl.exe %1 %*
позволит вызывать сценарий Perl следующим образом:

   script.pl 1 2 3

Если следует исключить необходимость ввода расширений имен файлов, введите следующую команду:

   set PATHEXT=.pl;%PATHEXT%
и сценарий может быть запущен следующим образом:

   script 1 2 3
См. также


 
GrayFace ©   (2007-01-30 21:07) [2]

Ega23 ©   (29.01.07 9:42) [1]
Что это???

Вроде это можно через какой-то интерфейс, но я делал через реестр:
Имя проги - DefPreview
Расширение - .def
function TForm1.Associated:boolean;
const
 RegName="DefPreview.Def";
 Backup="DefPreview Backup";
var s:string;
begin
 with TRSRegistry.Create do
 try
   RootKey:= HKEY_CLASSES_ROOT;
   Result:= OpenKeyReadOnly("\.def") and Read("", s) and (s=RegName) and
            OpenKeyReadOnly("\"+RegName+"\shell\open\command") and
            Read("", s) and SameText(s, AssociatePath);
 finally
   Free;
 end;
end;

procedure TForm1.Associate;
const
 RegName="DefPreview.Def";
 Backup="DefPreview Backup";
var s:string;
begin
 with TRSRegistry.Create do
 try
   RootKey:=HKEY_CLASSES_ROOT;

   Win32Check(OpenKey("\"+RegName+"\DefaultIcon", true));
   WriteString("", Application.ExeName+",0");
   Win32Check(OpenKey("\"+RegName+"\shell\open\command", true));
   WriteString("", AssociatePath);

   Win32Check(OpenKey("\.def", true));
   if Read("", s) and (s<>RegName) and (s<>"") then
     WriteString(Backup, s);
   WriteString("", RegName);
 finally
   Free;
 end;
end;

procedure TForm1.Unassociate;
const
 RegName="DefPreview.Def";
 Backup="DefPreview Backup";
var s:string;
begin
 with TRSRegistry.Create do
 try
   RootKey:=HKEY_CLASSES_ROOT;
   Win32Check(OpenKey("\.def", true));
   s:=ReadString("");
   if s=RegName then
   begin
     if not Read(Backup, s) then s:="";
     WriteString("", s);
     DeleteValue(Backup);
     DeleteKey("\"+RegName);
   end;
 finally
   Free;
 end;
end;


P.S. тут используется RSRegisrty из http://delphimaster.net/view/15-1169883926/



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

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

Наверх




Память: 0.47 MB
Время: 0.037 c
2-1170313141
Creative
2007-02-01 09:59
2007.02.18
Current Update


15-1169582407
SkySpeed
2007-01-23 23:00
2007.02.18
Эт чё, каждому пользователю MAIL.RU - ящик по 5 гиг? %)


2-1170189559
alexcoler
2007-01-30 23:39
2007.02.18
автообновление в DBGrid


15-1169659282
vrem
2007-01-24 20:21
2007.02.18
FPS!


2-1169866712
apic
2007-01-27 05:58
2007.02.18
Удаленное обнавление