![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ярлыки [D7, 2000]
makvell © (2006-02-06 00:45:00)Как программно создать ярлык из имеющегося *.ico файла, предварительно проверив, нет ли уже созданного?
Заранее спасибо!
Gydvin (2006-02-06 06:30:00) [1]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure CreateLink(const PathObj, WorkDir, PathLink, Description, Arguments: string; ShowCmd: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
uses ShlObj, ActiveX, ComObj;
procedure TForm1.Button1Click(Sender: TObject);
var
s:string;
begin
s:='c:\1.lnk';
if not fileexists(s) then
CreateLink('C:\Program Files\ICQLite\Plugins\MIB\Main\ICQWelcome2\welcome_icon.ico','C:\Program Files\ICQLite\Plugins\MIB\Main\ICQWelcome2\',s,'Ярлык!!!!','',1)
else showmessage ('Ярлык уже создан');
end;
procedure tform1.CreateLink(const PathObj, WorkDir, PathLink, Description, Arguments: string; ShowCmd: Integer);
var NewLink: IShellLink;
begin
NewLink := CreateComObject(CLSID_ShellLink) as IShellLink;
with NewLink do
begin
SetPath(PChar(PathObj));
SetWorkingDirectory(PChar(WorkDir));
SetDescription(PChar(Description));
SetArguments(PChar(Arguments));
SetShowCmd(ShowCmd);
end;
(NewLink as IPersistFile).Save(PWChar(WideString(PathLink)), false);
end;
end.
TUser (2006-02-06 05:23:00) [2]ico - это картинка, вообще-то. Попобдробнее задачу опиши.