Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.14;
Скачать: CL | DM;

Вниз

Program Shortcut ?   Найти похожие ветки 

 
NetKnight ©   (2002-12-04 16:06) [0]

Кто-нить подскажет как делать фичу установки ярлыка на десктоп в дельфях ?


 
Игорь Шевченко ©   (2002-12-04 17:37) [1]

IShellLink


 
P@SHA   (2003-01-31 22:43) [2]


...
uses ..., registry;
...
Procedure TForm1.BitBtn1click(Object: TSender);
var
MyObject : IUnknown;
MySLink : IShellLink;
MyPFile : IPersistFile;
Directory, FileName : String;
WFileName : WideString;
MyReg : TRegIniFile;
begin
MyObject := CreateComObject(CLSID_ShellLink);
MySLink := MyObject as IShellLink;
MyPFile := MyObject as IPersistFile;
FileName := "NOTEPAD.EXE";
with MySLink do begin
SetArguments("C:\AUTOEXEC.BAT");
SetPath(PChar(FileName));
SetWorkingDirectory(PChar(ExtractFilePath(FileName)));
end;
MyReg := TRegIniFile.Create(
"Software\MicroSoft\Windows\CurrentVersion\Explorer");

// Используй следующую строчку кода для создания ярлыка на рабочем столе

Directory := MyReg.ReadString("Shell Folders","Desktop","");


WFileName := Directory+"\FooBar.lnk";
MyPFile.Save(PWChar(WFileName),False);
MyReg.Free;

end;


 
Nicky   (2003-02-20 13:30) [3]


> MyObject := CreateComObject(CLSID_ShellLink);

А у меня здесь вываливается Runtime error 217. Чо делать то?


 
Viktor Kushnir ©   (2003-02-21 10:07) [4]

Я ярлыки так содавал, под D4 вроде работало.

procedure TConfigForm.CreateLink(const PathObj, PathLink, Desc, Param: string);
var
IObject: IUnknown;
SLink: IShellLink;
PFile: IPersistFile;
begin
CreateDirs(PathLink);
IObject := CreateComObject(CLSID_ShellLink);
SLink := IObject as IShellLink;
PFile := IObject as IPersistFile;
with SLink do begin
SetArguments(PChar(Param));
SetDescription(PChar(Desc));
SetPath(PChar(PathObj));
end;
PFile.Save(PWChar(WideString(PathLink)), True);
end;



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

Текущий архив: 2003.04.14;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
3-44031
Silver_
2003-03-24 12:55
2003.04.14
SQL (СУБД - Access)


6-44291
zxss
2003-02-20 08:42
2003.04.14
Взаимодействие сервиса NT с System Tray


1-44136
Андрусь
2003-04-03 10:59
2003.04.14
Является ли корректным такое освобождение памяти


3-44081
Pontic
2003-03-26 19:19
2003.04.14
Проблема с Interbase


1-44087
Sirus
2003-04-01 09:51
2003.04.14
Пакеты (Package) и библиотеки DLL в Delphi...