Ver Mensaje Individual
  #9  
Antiguo 05-02-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Reputación: 27
delphi.com.ar Va por buen camino
Probé tu código "levemente modificado", y funciona:
Código:
procedure TForm1.Button1Click(Sender: TObject);
var
  AComObject: IUnknown;
  APersistFile: IPersistFile;
begin
  AComObject := CreateComObject(CLSID_ShellLink);

  with AComObject as IShellLink do
  begin
    OleCheck(SetArguments(''));
    OleCheck(SetPath('C:\WINDOWS\CALC.EXE'));
    OleCheck(SetWorkingDirectory('C:\WINDOWS'));

    {Para que tome el ícono por Default}
    //OleCheck(SetIconLocation(nil, 0));

    {Para Otro ícono}
    OleCheck(SetIconLocation('C:\WINDOWS\Moricons.dll', 10));
  end;

  AComObject.QueryInterface(IPersistFile, APersistFile);
  APersistFile.Save('C:\ACCESO DIRECTO.LNK', False);
end;
Supongo que si pones SetIconLocation(nil, X)... tomará el ícono X del exe del SetPath!

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita