Bonjour,
Je souhaite gérer une liste de racourcis. Pour celà j'utilise un ListView dans lequel j'ajoute mes fichiers par drag and drop depuis windows.Cette partie là fonctionne, voici le code (au cas où):
Ce qui ne marche pas c'est lorsque je souhaite ouvrir l'un des racourci en cliquant dessus. J'utilise shellexecute comme ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 var FileNbr, i: Integer; FileName: String; Files: Array[0..255] of Char; ListItem: TListItem; procedure TFichier.FormCreate(Sender: TObject); begin DragAcceptFiles(Self.Handle,True); end; procedure TFichier.DropMsg(var msg: TWMDropFiles); // faire le drag and drop begin FileNbr:= DragQueryFile(Msg.Drop, $FFFFFFFF, Files, SizeOf(FileName)); for i:=0 to FileNbr-1 do begin FileName:=copy(Files, 0, DragQueryFile(Msg.Drop, i, Files, 255)); ListItem:=ListView1.Items.Add; ListItem.Caption:=ExtractFileName(FileName); //Column 0 - Nom ListItem.SubItems.Add(FileName); //Column 1 - Origine end; Msg.Result:=0; DragFinish(msg.Drop); end;
Avec cette ligne je n'obtient que des erreurs, je pense que c'est a cause de "FileName".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 procedure TFichier.ListView1SelectItem(Sender: TObject; Item: TListItem; Selected: Boolean); begin ShellExecute(0,'open',PChar(filename) , Nil, Nil, SW_SHOW); end;
Donc est-ce que quelqu'un saurait comment lancer les raccourcis (qui sont des dossiers, des fichiers textes...comme "mes documents" par exemple) en cliquant dessus?
J'espére avoir été clair dans ma demande (il est 00:40 et mes facultées mentales se dégradent passé minuit).
Merci.
Partager