Genvej

Tags:    delphi

User
Bruger #75 @ 12.08.01 11:06
Hejsa

Hvordan kan man oprette en genvej i skrivebordet eller en anden mappe, til f.eks. C:\\test.txt?
Kan man også selv bestemme ikonet?


Med venlig hilsen

Mikkel Bøg Clemmensen
mt.clemmensen@vip.cybercity.dk
http://www.tfweb.f2s.com



5 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 5 karma
Sorter efter stemmer Sorter efter dato
<quote>Hejsa

Hvordan kan man oprette en genvej i skrivebordet eller en anden mappe, til f.eks. C:\\test.txt?
Kan man også selv bestemme ikonet?
</quote>


Prøv med følgende:

If you need create a shell link from your application (for example, from you
setup app), you can use the next code:

procedure CreateShortCut (ShortCut, Application, Parameters, WorkDir:
string; SW_State: Integer; IconFile: string; IconIndex: Byte) ;
var SCObject: IUnknown;
SCSLink: IShellLink;
SCPFile: IPersistFile;
WFName: WideString;
begin
SCObject := CreateComObject(CLSID_ShellLink);
SCSLink := SCObject as IShellLink;
SCPFile := SCObject as IPersistFile;
SCSLink.SetPath(PChar(Application));
SCSLink.SetArguments(PChar(Parameters));
SCSLink.SetWorkingDirectory(PChar(WorkDir));
SCSLink.SetShowCmd(SW_State);
SCSLink.SetIconLocation(PChar(IconFile), IconIndex);
WFName := ShortCut;
SCPFile.Save(PWChar(WFName), False);
end;

For example,
CreateShortCut('C:\\WINDOWS\\' + yourDESKTOPFolder + '\\NewDelphi.lnk',
'D:\\MISHA\\DELPHI\\WareHouse-BANK\\WHBank.exe',
'',
'D:\\MISHA\\DELPHI\\WareHouse-BANK\\',
SW_NORMAL,
'D:\\MISHA\\DELPHI\\WareHouse-BANK\\WHBank.Exe',
0);


Koden er fra en mailing-list....jeg har ikke selv prøvet om det virker....



User
Bruger #75 @ 12.08.01 12:55
<quote>Hejsa

Hvordan kan man oprette en genvej i skrivebordet eller en anden mappe, til f.eks. C:\\test.txt?
Kan man også selv bestemme ikonet?



Prøv med følgende:

If you need create a shell link from your application (for example, from you
setup app), you can use the next code:

procedure CreateShortCut (ShortCut, Application, Parameters, WorkDir:
string; SW_State: Integer; IconFile: string; IconIndex: Byte) ;
var SCObject: IUnknown;
SCSLink: IShellLink;
SCPFile: IPersistFile;
WFName: WideString;
begin
SCObject := CreateComObject(CLSID_ShellLink);
SCSLink := SCObject as IShellLink;
SCPFile := SCObject as IPersistFile;
SCSLink.SetPath(PChar(Application));
SCSLink.SetArguments(PChar(Parameters));
SCSLink.SetWorkingDirectory(PChar(WorkDir));
SCSLink.SetShowCmd(SW_State);
SCSLink.SetIconLocation(PChar(IconFile), IconIndex);
WFName := ShortCut;
SCPFile.Save(PWChar(WFName), False);
end;

For example,
CreateShortCut('C:\\WINDOWS\\' + yourDESKTOPFolder + '\\NewDelphi.lnk',
'D:\\MISHA\\DELPHI\\WareHouse-BANK\\WHBank.exe',
'',
'D:\\MISHA\\DELPHI\\WareHouse-BANK\\',
SW_NORMAL,
'D:\\MISHA\\DELPHI\\WareHouse-BANK\\WHBank.Exe',
0);


Koden er fra en mailing-list....jeg har ikke selv prøvet om det virker....</quote>


Jeg får fejl som Undeclared Identifer 'IPersistFile'. Som om at der manglede noget i uses... Men jeg kan ikke finde det i hjælpen.


Med venlig hilsen

Mikkel Bøg Clemmensen
mt.clemmensen@vip.cybercity.dk
http://www.tfweb.f2s.com



<quote>Jeg får fejl som Undeclared Identifer 'IPersistFile'. Som om at der manglede noget i uses... Men jeg kan ikke finde det i hjælpen.
</quote>

Tilføj ActiveX til uses.



User
Bruger #75 @ 12.08.01 17:01
<quote>Jeg får fejl som Undeclared Identifer 'IPersistFile'. Som om at der manglede noget i uses... Men jeg kan ikke finde det i hjælpen.


Tilføj ActiveX til uses.</quote>

Nu siger den:

Undeclared identifer 'CreateComObject'.


Med venlig hilsen

Mikkel Bøg Clemmensen
mt.clemmensen@vip.cybercity.dk
http://www.tfweb.f2s.com



<quote>

Nu siger den:

Undeclared identifer 'CreateComObject'.
</quote>

Tilføj ComObj til uses. Næste gang den klager over at den ikke kan finde en funnktion så kunne du jo evt. prøve at se hvad der står i hjælpen om den. Hvis det ikke virker kan du prøve at søge dine filer igennem efter funktionen (Vælg Search - Find In Files og så Search in directories og indtast så stien til vcl'et (typisk C:\\Program Files\\Borland\\Delphi5\\Source)).




t