Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.11.14;
Скачать: [xml.tar.bz2];

Вниз

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

 
clampo ©   (2004-10-03 21:33) [0]

Привет всем мастерам!!! :).
Взял я этот код из FAQ. Но он работает с недостатками:
1) При регистрации на файл pci ставиться значок приложения,
как сделать чтобы поставить свой значок (н\р зи папки с этим приложением).
2) Регистрируются только неизвестные типы файлов, а если раньше они были под другой прогой то так и остаются под ней.
3) Какая процедура нужна для дерегистрации файлов.
Помогите решить вопросы
//Use the registry to register your own filetype.

uses registry;

procedure TForm1.RegisterFileType(prefix:String; exepfad:String);
var
 reg:TRegistry;
begin
 reg:=TRegistry.Create;
 reg.RootKey:=HKEY_CLASSES_ROOT;
 //create a new key  --> .pci
 reg.OpenKey("."+prefix,True);
 //create a new value for this key --> pcifile
 reg.WriteString("",prefix+"file");
 reg.CloseKey;
 //create a new key --> pcifile
 reg.CreateKey(prefix+"file");
 //create a new key pcifile\DefaultIcon
 reg.OpenKey(prefix+"file\DefaultIcon",True);
 //and create a value where the icon is stored --> c:\project1.exe,0
 reg.WriteString("",exepfad+",0");
 reg.CloseKey;
 reg.OpenKey(prefix+"file\shell\open\command",True);
 //create value where exefile is stored --> c:\project1.exe "%1"
 reg.WriteString("",exepfad+" "%1"");
 reg.CloseKey;
 reg.Free;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 RegisterFileType("pci","c:\project1.exe");
end;


 
GuAV ©   (2004-10-03 22:01) [1]

1)
reg.OpenKey(prefix+"file\DefaultIcon",True); //and create a value where the icon is stored --> c:\project1.exe,0
reg.WriteString("","c:\my.ico");
или писать Icon Handler
3) Удалить все созданные ключи


 
clampo ©   (2004-10-04 12:46) [2]

А как зарегистрировать те типы файлов которые раньше были под другой прогой. Значок меняется а регистрации под мою прогу нет.


 
П7   (2004-10-04 13:24) [3]

смотри 1.3


 
clampo ©   (2004-10-04 15:29) [4]

Что такое "1.3"


 
XProger ©   (2004-10-05 23:02) [5]


reg:=TRegistry.Create;        //Создаём переменную реестра
reg.RootKey:=HKEY_CLASSES_ROOT;
reg.OpenKey("\.POD\",true);               //Создаём "ключ" (если его нет)
reg.WriteString("","PODEditor");           //Строка по умолчанию
reg.OpenKey("\PODEditor\DefaultIcon\",true); //Берём иконку файла из
reg.WriteString("",ParamStr(0)+",0");        //EXE"шника проги
reg.OpenKey("\PODEditor\shell\open\command\",true); //Открываем ключ команд
reg.WriteString("",ParamStr(0)+" %1"); //Прописываем путь к EXE"шнику
reg.CloseKey;                      //Закрываем "ключ"
reg.Free;                     //Удаляем переменную реестра


Вставляй в инициализацию приложения...


 
clampo ©   (2004-10-06 10:21) [6]

Что такое инициализация приложения. Может это файл *.dpr ?



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

Форум: "WinAPI";
Текущий архив: 2004.11.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.034 c
6-1094133088
Евгений30048
2004-09-02 17:51
2004.11.14
Как закачать на сервер БИНАРНЫЙ файл по http?


14-1098977679
Silla
2004-10-28 19:34
2004.11.14
Visual C++ 6&7 Forum


1-1099067444
Лёха
2004-10-29 20:30
2004.11.14
Удаление папки


3-1097755543
Skywalker
2004-10-14 16:05
2004.11.14
Как добавить апостроф


3-1097844780
Lika
2004-10-15 16:53
2004.11.14
Округление вещественных чисел





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский