Atalhos

31/12/2003

0

Caros amigos, gostaria da ajuda de alguem para resolver um pequeno problema que estou enfrentando

Tenho uma procedure para criar um atalho no menu startup, que está funcionando perfeitamente, a naõ ser por um detalhe, a agenda, que o atalho abre, mantem todos os dados em um arquivo texto, e, notei que quando ela inicia com o windows, pelo atalho que eu criei, ela não encontra este arquivo
Porem se eu abrir as propriedades deste atalho, o campo ´Abrir em´ não esta preenchido, e quando coloco a pasta onde esta o executável com o arquivo texto que ele utiliza, ai funciona perfeitamente;

Gostaria de saber se alguem sabe um modo de preencher este campo ´Iniciar em´, das propriedades do atalho via delphi,
Abaixo é a procedure que estoiu utilizando para criar o meu atalho.

Obs. Estou criando este atalho no xp, ainda não testei no Win9x, não sei se da o mesmo problema, mas imagino que sim.


procedure abre(inicia:boolean);
var
reg:TRegIniFile;
meuobjeto:IUnknown;
meulink:IShellLink;
meuarquivo:IPersistFile;
nomearquivo:string;
pastaatalho:string;
wnomearquivo:WideString;
begin
reg:=TRegIniFile.Create(´Software\MicroSoft\Windows\CurrentVersion\Explorer´);
pastaatalho:=reg.ReadString(´Shell Folders´,´Startup´,´´)+´\´+Application.Title+´.lnk´;
if inicia then
begin
meuobjeto:=createcomobject(clsid_shelllink);
meulink:=meuobjeto as ishelllink;
meuarquivo:=meuobjeto as ipersistfile;
nomearquivo:=Application.ExeName;
meulink.SetPath(pchar(nomearquivo));
meulink.SetWorkingDirectory(pchar(application.GetNamePath));
wnomearquivo:=pastaatalho;
meuarquivo.Save(pwchar(wnomearquivo),false);
reg.Free;
end;

Bem, Desde já agradeço qualquer ajuda.
T+


Lordskinner

Lordskinner

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar