Atalho

Delphi

28/03/2003

:?: Gostaria de saber como criar um atalho na área de trabalho via programação?


Anonymous

Anonymous

Curtidas 0

Respostas

Carnette

Carnette

28/03/2003

:?: Gostaria de saber como criar um atalho na área de trabalho via programação?


Criar atalho no desktop
Coloque essas units na seção implementation :

uses ShlObj, ActiveX,ComObj, Registry;
Por último, crie uma procedure que faça o trabalho:

procedure CreateShortcut (FileName, Parameters, InitialDir, ShortcutName, ShortcutFolder : String);
var
MyObject : IUnknown;
MySLink : IShellLink;
MyPFile : IPersistFile;
Directory : String;
WFileName : WideString;
MyReg : TRegIniFile;
begin
MyObject := CreateComObject(CLSID_ShellLink);
MySLink := MyObject as IShellLink;
MyPFile := MyObject as IPersistFile;
with MySLink do
begin
SetArguments(Parameters);
SetPath(PChar(FileName));
SetWorkingDirectory(PChar(InitialDir));
end;
MyReg := TRegIniFile.Create(´Software\MicroSoft\Windows\CurrentVersion\Explorer´);
Directory := MyReg.ReadString (´Shell Folders´,´Desktop´,´´);
WFileName := Directory + ´\´ + ShortcutName + ´.lnk´;
MyPFile.Save (PWChar (WFileName), False);
MyReg.Free;
end;


GOSTEI 0
Vagner.oliveira

Vagner.oliveira

28/03/2003

[quote:cd538695e8=´DDSJ´]:?: Gostaria de saber como criar um atalho na área de trabalho via programação?


Criar atalho no desktop
Coloque essas units na seção implementation :

uses ShlObj, ActiveX,ComObj, Registry;
Por último, crie uma procedure que faça o trabalho:

procedure CreateShortcut (FileName, Parameters, InitialDir, ShortcutName, ShortcutFolder : String);
var
MyObject : IUnknown;
MySLink : IShellLink;
MyPFile : IPersistFile;
Directory : String;
WFileName : WideString;
MyReg : TRegIniFile;
begin
MyObject := CreateComObject(CLSID_ShellLink);
MySLink := MyObject as IShellLink;
MyPFile := MyObject as IPersistFile;
with MySLink do
begin
SetArguments(Parameters);
SetPath(PChar(FileName));
SetWorkingDirectory(PChar(InitialDir));
end;
MyReg := TRegIniFile.Create(´Software\MicroSoft\Windows\CurrentVersion\Explorer´);
Directory := MyReg.ReadString (´Shell Folders´,´Desktop´,´´);
WFileName := Directory + ´\´ + ShortcutName + ´.lnk´;
MyPFile.Save (PWChar (WFileName), False);
MyReg.Free;
end;[/quote:cd538695e8]
Pô :shock: Copiou a mesma coisa dos outros tópicos
da erro esse código na linha [b:cd538695e8]SetArguments(Parameters); [/b:cd538695e8]
Incompatible types String and PChar



GOSTEI 0
Rômulo Barros

Rômulo Barros

28/03/2003

Problema resolvido [url=http://forum.clubedelphi.net/viewtopic.php?t=13299]NESTE LINK[/url] :wink:


GOSTEI 0
POSTAR