![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как добавить свой пункт в контекстное меню файлов? [D7, WinXP]
MSTX © (2003-05-18 14:44:00)Например "Зашифровать". И чтобы при нажатии открывалось приложение и в компоненте ListBox добавлялся этот файл?
Polevi (2003-05-20 16:21:00) [1]D:\Program Files\Borland\Delphi6\Demos\ActiveX\ShellExt
NickBat (2003-05-19 16:46:00) [2]procedure TFormMain.FormCreate(Sender: TObject);
begin
FIniFile := TRegIniFile.Create(MyKeyReg);
//настройки
// проверяем есть ли соответствие для вашего типа файлов
With TRegistry.create do
begin
Try
RootKey:=HKEY_CLASSES_ROOT;
if not OpenKey(".xxx",false) then
if Application.MessageBox("Добавить данные в реестр?","Мой диалог",
mb_YesNo+mb_IconQuestion)=idYes then SetRegKey;
Finally
Free;
end;
end;
end;
procedure TFormMain.SetRegKey;
var
FileClass: string;
begin
FileClass := "Файлы моей программы";
With TRegistry.create do
begin
Try
RootKey:=HKEY_CLASSES_ROOT;
if OpenKey(".ххх",True) then
begin
WriteString("",FileClass);
CloseKey;
end;
if OpenKey(FileClass,True) then
begin
WriteString("","Файлы моей программы");
CloseKey;
end;
if OpenKey(FileClass+"\Shell\Open",True) then
begin
WriteString("","Open with МОЯ программа"); //Это действие при клике
CloseKey;
end;
if OpenKey(FileClass+"\Shell\Open\command",True) then
begin
WriteString("",Application.ExeName+" "%1""); //Тут что запускать -
//например екзкшник, где этот код выполняется
CloseKey;
// Result:=true;
end;
// Укажем файл и иконку в нём, в данном случае, иконку приложения
if OpenKey(FileClass+"\DefaultIcon",True) then
begin
WriteString("",Application.ExeName + ",0");
CloseKey;
end;
Finally
Free;
end;
end;
end;
VMcL (2003-05-19 14:17:00) [3]<КаталогDelphi>\Demos\ActiveX\ShellExt
DeadMeat (2003-05-19 13:18:00) [4]www.shellplus.com
Здесь лежат компоненты, заточенные как-раз под это дело... Да ещё и бесплатные... Однако скачать их мне так и не удалось... Ихний сервак не поддерживает возобновление, а весит вся эта радость ~5 Mb. Если у кого-то есть ссылочка на них в другом, нормальномместе, павалуйста напишите...
Rocker (2003-05-19 11:39:00) [5]Мне бы это было тоже интересно знать!
MSTX (2003-05-18 20:55:00) [6]Я имею ввиду вот что:
Щелкаешь по файлу правой кнопкой,
выбираешь пунт "зашифровать" (например),
открывается окно проги,
в нем в компоненте ListBox повляется имя файла.
helper (2003-05-18 14:50:00) [7]AddItem