Главная страница
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-1169891947
Muchacho123
2007-01-27 12:59
2007.02.18
MultiSelect в OpenDialog


1-1166770324
TCrash
2006-12-22 09:52
2007.02.18
ScreenShot


15-1169755706
Михель
2007-01-25 23:08
2007.02.18
Подскажите почтовик с паролем!


2-1170078591
NPC
2007-01-29 16:49
2007.02.18
Связи между таблицами


2-1169892708
GEN++
2007-01-27 13:11
2007.02.18
Передача массива между приложениями