Вниз
Скачать: CL | DM;

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

← →
KIR ©   (2002-10-18 11:25) [0]

Народ, как исполняется сабж? Хотелось бы чтоб файлы имеющие расширение, например *.ttt, имели свои значки. И еще нужно чтоб по клику на них запускалась прога...


← →
ZZ ©   (2002-10-18 11:28) [1]

FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ FAQ


← →
KIR ©   (2002-10-18 12:14) [2]

Какой молодец!!!


← →
Anatoly Podgoretsky ©   (2002-10-18 12:19) [3]

А для начала посмотреть секцию HKEY/Classes не судьба


← →
Dr.UFO_51   (2002-10-18 13:21) [4]

1)Вот тебе процедурка. Смотри сюды : в ProgPath пишишь путь к программе ("c:\prog\UFO.exe"), в Ext Разрешение (.ttt)

Например : RegType("c:\prog\UFO.exe",".ttt");

2)Paramstr(1) возвращяет имя запускаемого файла.

Например : На криат пишешь :

if Paramstr(1)<>"" then
memo1.loadfromFile(Paramstr(1));

/////////////////////////////////////////////////

procedure RegType(ProgPath:string;Ext:string);
var
R : TRegIniFile;
begin
R := TRegIniFile.Create("");
with R do
begin
RootKey := HKEY_CLASSES_ROOT;
WriteString("."+Ext,"",Ext);
WriteString(Ext,"","ArrBuzz ""+Ext+"" type");
WriteString(Ext+"\DefaultIcon","",ProgPath);
WriteString(Ext+"\Shell","","This_Is_Our_Default_Action");
WriteString(Ext+"\Shell\First_Action",
"","This is our first action");
WriteString(Ext+"\Shell\First_Action\command","",
ProgPath+" /LotsOfParamaters %1");
WriteString(Ext+"\Shell\This_Is_Our_Default_Action","",
"This is our default action");
WriteString(Ext+"\Shell\This_Is_Our_Default_Action\command",
"",ProgPath+" %1");
WriteString(Ext+"\Shell\Second_Action",
"","This is our second action");
WriteString(Ext+"\Shell\Second_Action\command",
"",ProgPath+" /TonsOfParameters %1");
Free;
end;
end;

///////////////////////////////////////////////////////

По вопросам можешь обратиться на CivUFO@mail.ru


← →
KIR ©   (2002-10-22 13:45) [5]

Еще вопрос по теме: насколько я понял, строка WriteString(Ext+"\DefaultIcon","",ProgPath); отвечает за назначение пиктограммы новому типу файлов, а как сделать чтобы эта картинка не совпадала с пиктограммой самого приложения, но находилаль бы в exe"шнике?


← →
Дремучий ©   (2002-10-22 13:50) [6]


> Регистрация своего типа файлов в Windows

смотри готовое решение в UBPFD
http://delphibase.endimus.com/?action=viewtopic&topic=sysiface

Регистрирование собственного расширения файлов
procedure RegisterExtensions(InArr: array of string; FilePath, Key: string);
Прислал: ION T (Киев) ( 3 июня 2002 г. )


Сопоставление приложению файлов определенного типа
procedure RegisterFileType(prefix:string; exepfad:string; IconIndex:byte);
Прислал: Дремучий ( 10 мая 2002 г. )

:))

там есть еще много чего интересного.
Читайте и присылайте.
:))


← →
KIR ©   (2002-10-24 11:07) [7]

>Дремучий. Может я чего не понимаю, но в Вашем примере я не нашел ответа на вопрос, как сопоставить типу файлов определенную пиктограмму, находящуюся в exe"шнике?


← →
DieHard ©   (2002-10-24 11:22) [8]

WriteString(Ext+"\DefaultIcon","",ProgPath+","+IntToStr(IndexOfIcon));
см. реестр...


← →
KIR ©   (2002-10-24 12:06) [9]

>DieHard WriteString(Ext+"\DefaultIcon","",ProgPath+","+IntToStr(IndexOfIcon));

С этим-то я разобрался, вроде даже разобрался, как bmp пихнуть в exe"шник. Только после того, как я пихаю bmp в exe"шник в нем все равно остается только иконка с индексом 0 (стандартный дельфийский значок). Может надо bmp перевести в ico?



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.014 c
1-11192
Vicheslav
2002-10-22 13:27
2002.11.04
Внешний вид.


3-11107
Kurmanbek
2002-10-16 08:59
2002.11.04
Как лечить базу IBase? Помогите pliz!


1-11231
Cossys
2002-10-24 17:01
2002.11.04
Запуск внешнего DOS-приложения


3-11079
psv
2002-10-15 15:41
2002.11.04
Создание в grid ячейки с крестиком в правом нижнем углу


1-11323
John Magic
2002-10-24 08:30
2002.11.04
Временное окно




   Наверх