Help !! comment excuté un raccourci *.lnk svp

Résolu
tsainvet Messages postés 95 Date d'inscription samedi 27 mars 2004 Statut Membre Dernière intervention 14 décembre 2017 - 14 mai 2004 à 20:41
tsainvet Messages postés 95 Date d'inscription samedi 27 mars 2004 Statut Membre Dernière intervention 14 décembre 2017 - 29 janv. 2011 à 03:53
bonjours !!

je suis nouveau dans le monde de la programation

et apres avoir je l'avous récuperer quelque source sur le site pour apprendre !!
je me découvre une nouvelle passion !!

ma question : jai fait fait un programe!! appartir délément
de source existante et voila je voudrais par l'intermédiaire d'un bouton lancer une application exterieur mais je voudrait lancez le raccourci fichiers.lnk le probleme est que lorsque j(utiliise cette fonction :

procedure TfrmMain.Button8Click(Sender: TObject);
begin

ShellExecute(0,'OPEN','c:\mon reperrtoire\monfichier.lnk', Nil, Nil, SW_SHOW);
end;

il ouvre le boc note et pas l'application !! comment faire ? pour excuté un raccouci ????help svp

mon adress mail flapercoy@yahoo.fr

a oui cest sur delphi 7

8 réponses

DRJEROME Messages postés 436 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 5 février 2015
15 mai 2004 à 08:00
Essaie ceci (il faut ActiveX,ComObj,ShlObj,shellapi dans les uses):

var 
I:IShellLink; 
Ip:IPersistFile; 
w:win32_find_dataa; 
pc:array[0..max_path-1] of char; 
begin 
I:=CreateComObject(CLSID_ShellLink)as IShellLink; 
Ip:=I as IPersistFile; 
Ip.load('c:\mon reperrtoire\monfichier.lnk', STGM_READ ); 
I.GetPath(pc,max_path,w,SLGP_RAWPATH ); // 
shellexecute(Handle,'open',pc,'','',sw_showdefault); 
end;


JROD DorotheeJ
3
DRJEROME Messages postés 436 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 5 février 2015
15 mai 2004 à 08:03
En fait le showmessage est "un fossile" de mon source tu laisses seulement :

var 
I:IShellLink; 
Ip:IPersistFile; 
w:win32_find_dataa; 
pc:array[0..max_path-1] of char; 
begin 
    I:=CreateComObject(CLSID_ShellLink)as IShellLink; 
    Ip:=I as IPersistFile; 
    Ip.load('c:\mon reperrtoire\monfichier.lnk', STGM_READ ); 
    I.GetPath(pc,max_path,w,SLGP_RAWPATH );      // 
    shellexecute(Handle,'open',pc,'','',sw_showdefault); 
end;
3
DRJEROME Messages postés 436 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 5 février 2015
15 mai 2004 à 08:08
Excuse-moi je croyais avoir mis un showmessage.

Donc ça explique pourquoi J'ai mis 2 fois le même code(j'avais déjà édité ce code dans un autre forum où j'avais laissé un showmessage qui traînait...)

n'oublie pas de déclarer les uses...
3
tsainvet Messages postés 95 Date d'inscription samedi 27 mars 2004 Statut Membre Dernière intervention 14 décembre 2017
16 mai 2004 à 15:18
Flapercoy Merci a toi DR jerome !!
je vais essayer ta commende !! je reviendrais sur le forum te dire si cela a ete et si c'est le k alors un grand merci avance car sa va alleger mon aplli grave !!
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tsainvet Messages postés 95 Date d'inscription samedi 27 mars 2004 Statut Membre Dernière intervention 14 décembre 2017
16 mai 2004 à 21:52
bon bin sa fonction pas je panse que cela ne ce met pas ou je pansais

bon j'explique jai dans mon apli 10 bouton qui fonts réference a des raccourcis (fichier.lnk)

alors je sais pas comment faire stp peu tu me faire une petite source avec comme exemple deux bouton

chaque 'un dux relier a racourci comme cela je compredrais mieux STP

voila mon email flapercoy@yahoo.fr
merci avance
3
DRJEROME Messages postés 436 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 5 février 2015
18 mai 2004 à 22:08
il faut ActiveX,ComObj,ShlObj,shellapi dans les uses:

sinon tu le place dans le code d'un button comme tu l'avais essayé (je suppose)
3
tsainvet Messages postés 95 Date d'inscription samedi 27 mars 2004 Statut Membre Dernière intervention 14 décembre 2017
16 mai 2004 à 15:29
OOOOpp donc je fait comment pour l'integré?
--------------------------------------------------------
var
I:IShellLink;
Ip:IPersistFile;
w:win32_find_dataa;
pc:array[0..max_path-1] of char;
begin
I:=CreateComObject(CLSID_ShellLink)as IShellLink;
Ip:=I as IPersistFile;
Ip.load('c:\mon reperrtoire\monfichier.lnk', STGM_READ );
I.GetPath(pc,max_path,w,SLGP_RAWPATH ); //
shellexecute(Handle,'open',pc,'','',sw_showdefault);
end

-----------------------------------------------------------

je met ton code entre

procedure TfrmMain.Button8Click(Sender: TObject);
begin

ICI le code??
end;

si jai bien compri!!
0
tsainvet Messages postés 95 Date d'inscription samedi 27 mars 2004 Statut Membre Dernière intervention 14 décembre 2017
29 janv. 2011 à 03:53
de retour dans le monde de la programation apres avoir une un peu de relaché ;-)

je fait le tour des message qui on peu avoir des réponce je tenais meme avec beaucoup de retard te remercier pour laide que tu a pu me donnez




merci

amicalement TS
0
Rejoignez-nous