![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Пуск-Программы [D5, WinME]
Konsul © (2002-02-15 12:31:00)Как доьбавить ярлык в меню Пуск-Программы
Набережных С. (2002-02-15 16:34:00) [1]
function TAddGroupForm.AddLinkFile(const GroupID, GroupDisp,IconSource: string; Target,IconIndex: integer):boolean;
var
Lnk:IShellLink;
Prf: IPersistFile;
DskPath:array [0..MAX_PATH]of WideChar;
Path:Widestring;
Pid:PItemIDList;
begin
OleCheck(SHGetSpecialFolderLocation(Handle,Target,Pid));
OleCheck(SHGetPathFromIDList(Pid,@DskPath[0]));
Lnk:=CreateComObject(CLSID_ShellLink) as IShellLink;
try
OleCheck(Lnk.SetPath("rundll32.exe"));
OleCheck(Lnk.SetArguments(PChar("FastAccess.dll,Execute"+" "+ GroupID)));
OleCheck(Lnk.SetWorkingDirectory("%windir%"));
OleCheck(Lnk.SetIconLocation(PChar(IconSource),IconIndex));
OleCheck(Lnk.QueryInterface(System.TGUID(IID_IPersistFile),Prf));
try
Path:=StrPas(@DskPath[0])+"\"+GroupDisp+".lnk";
Prf.Save(PWideChar(Path),false);
result:=true;
finally
Prf:=nil;
end;
finally
Lnk:=nil;
end;
end;
Для Пуск-ПрограммыTarget = CSIDL_PROGRAMS
Dimka Maslov (2002-02-15 15:51:00) [2]Для того чтобы в главном меню появился ярлык, надо его разместить в папке c:\windows\главное меню\программы\