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

Вниз

Ярлыки   Найти похожие ветки 

 
makvell   (2006-02-06 00:45) [0]

Как программно создать ярлык из имеющегося *.ico файла, предварительно проверив, нет ли уже созданного?

Заранее спасибо!


 
TUser ©   (2006-02-06 05:23) [1]

ico - это картинка, вообще-то. Попобдробнее задачу опиши.


 
Gydvin ©   (2006-02-06 06:30) [2]

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.



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

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

Наверх




Память: 0.47 MB
Время: 0.056 c
2-1139503424
Silver...
2006-02-09 19:43
2006.02.26
$I чтоб по всему Проекту видно было


11-1120535815
Fanny
2005-07-05 07:56
2006.02.26
Проблемы с динамическими массивами


15-1139141206
Gero
2006-02-05 15:06
2006.02.26
Jpeg2000


15-1138855004
TUser
2006-02-02 07:36
2006.02.26
В круге первом


2-1139492489
Heap
2006-02-09 16:41
2006.02.26
Heap