Vb.net Créer un Raccourci de Fichier ou Dossier [Résolu]

kikou93 384 Messages postés mardi 4 février 2014Date d'inscription 26 août 2017 Dernière intervention - 4 nov. 2016 à 14:57 - Dernière réponse : kikou93 384 Messages postés mardi 4 février 2014Date d'inscription 26 août 2017 Dernière intervention
- 6 nov. 2016 à 11:58
Bonjour,
j'ai crée un logiciel qui me permet de créer beaucoup de raccourcis en même temps
(que ce soit un raccourci d'un fichier ou dossier), dans cette partie il y a aucun problème.
Je peux aussi changer le nom et l'icône du raccourci,bien sûr ils seront crées dans un emplacement bien précis.
je voulais aussi créer des raccourci des dossiers spéciaux comme (Poste de travail, Bureau, Mes Documents, Documents, Images, Musiques, Vidéos, Documents récents, Windows, ProgramFiles, Gestionnaire de périphériques, Gestion de l'ordinateur, Gestion des disques, Panneau de Configuration, Programmes et fonctionnalités ... etc)
j'arrive à le faire sans problème le raccourci se crée avec le nom que je choisi et l'icone par défaut,sauf pour ("Programmes et fonctionnalités ou Ajout/Suppression de programmes") , le nom est celui que je choisi mais l'icone qui est attribué au raccourci n'est pas celle par défaut :

si j'essaie de changer l'icône, l'icône change sans aucun problème
mais j'aimerais avoir l'icône par défaut comme pour tous les autres dossiers
Voici le code pour créer un Raccourci sans modifier l'icone :
Private Function CreerRaccourci(ByVal TargetName As String, ByVal ShortCutPath As String, ByVal ShortCutName As String) As Boolean
Dim oShell As Object
Dim Raccourcis As Object
Try
oShell = CreateObject("WScript.Shell")
Raccourcis = oShell.CreateShortcut(ShortCutPath & "\" & ShortCutName & ".lnk")
Raccourcis.TargetPath = TargetName
Raccourcis.WindowStyle = 1
Raccourcis.Save()
Catch ex As Exception
End Try
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
CreerRaccourci("Chemin du fichier", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) &, "Nom du fichier modifier")
End sub

Voici le code pour créer un Raccourci + modifier l'icone :
Private Function CreerRaccourciAvecIcone(ByVal TargetName As String, ByVal ShortCutPath As String, ByVal ShortCutName As String, ByVal Icones As String) As Boolean
Dim oShell As Object
Dim Raccourcis As Object
Try
oShell = CreateObject("WScript.Shell")
Raccourcis = oShell.CreateShortcut(ShortCutPath & "\" & ShortCutName & ".lnk")
Raccourcis.TargetPath = TargetName
Raccourcis.WindowStyle = 1
Raccourcis.IconLocation = Icones
Raccourcis.Save()
Catch ex As Exception
End Try
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
CreerRaccourci("Chemin du fichier", Environment.GetFolderPath(Environment.SpecialFolder.Desktop) &, "Nom du fichier modifier", "Chemin de l'icone")
End sub

pour créer le raccourci de Ajout/Suppression de programmes, remplacer "Chemin du fichier" par "Appwiz.cpl"
quelqu'un a une idée pour régler ce détail?
merci pour votre aide
Afficher la suite 

9 réponses

Répondre au sujet
Arnoid 35 Messages postés mardi 17 février 2015Date d'inscription 5 novembre 2016 Dernière intervention - 5 nov. 2016 à 11:00
0
Utile
7
Bonjour,

Pourquoi ne trouves-tu pas l'icone sur intenet puis l'ajouter dans ton programme pour qu'il l'utilise ?
kikou93 384 Messages postés mardi 4 février 2014Date d'inscription 26 août 2017 Dernière intervention > vb95 1386 Messages postés samedi 11 janvier 2014Date d'inscriptionContributeurStatut 12 décembre 2017 Dernière intervention - 5 nov. 2016 à 15:33
Salut vb95
merci pour ta réponse
c'est vrais tu a raison, Dommage qu'on ne peux pas récupérer les icônes de Windows, car il sont dans des fichiers dll, par exemple dans :
C:\Windows\system32\SHELL32.dll
C:\Windows\system32\imageres.dll
je vais me contenter de la méthode que j'ai mentionné plus haut (télécharger l'icône -> la mettre dans les ressources -> là copier de Ressource vers l'ordinateur -> Récupérer le chemin de l'icône )
Merci pour ton Aide Vb95
Arnoid 35 Messages postés mardi 17 février 2015Date d'inscription 5 novembre 2016 Dernière intervention > kikou93 384 Messages postés mardi 4 février 2014Date d'inscription 26 août 2017 Dernière intervention - 5 nov. 2016 à 15:54
Sinon télécharge les icones de toutes les versions de windows et adapte ton code pour chaque version de windows sur laquelle le logiciel pourra être utilisé.

Du genre si windows xp alors utiliser l'icone Appwiz_xp.ico etc..
kikou93 384 Messages postés mardi 4 février 2014Date d'inscription 26 août 2017 Dernière intervention > Arnoid 35 Messages postés mardi 17 février 2015Date d'inscription 5 novembre 2016 Dernière intervention - 5 nov. 2016 à 21:24
Salut Arnoid
c'est vrais ça serait super, mais c'est pas facile j'ai déjà galéré pour télécharger certain icone
vb95 1386 Messages postés samedi 11 janvier 2014Date d'inscriptionContributeurStatut 12 décembre 2017 Dernière intervention > kikou93 384 Messages postés mardi 4 février 2014Date d'inscription 26 août 2017 Dernière intervention - 5 nov. 2016 à 18:09
kikou93 384 Messages postés mardi 4 février 2014Date d'inscription 26 août 2017 Dernière intervention > vb95 1386 Messages postés samedi 11 janvier 2014Date d'inscriptionContributeurStatut 12 décembre 2017 Dernière intervention - 5 nov. 2016 à 21:21
Salut vb95
j'ai déjà créé un logiciel qui me permet de récupérer les icônes des fichiers (PDF, Word ,exe, Image, Zip ... etc )
mais pas celle des dossier spéciaux comme (Poste de travail , panneaux de configuration ni même celle de Ajouter ou Supprimer des programmes ... etc), l'erreur suivante s'affiche (Défaillance irrémédiable)

voici le exe de l'application que j'ai créé :
http://www.cjoint.com/c/FKfuuDhv1nk
Commenter la réponse de Arnoid
kikou93 384 Messages postés mardi 4 février 2014Date d'inscription 26 août 2017 Dernière intervention - 6 nov. 2016 à 11:58
0
Utile
Salut
j'ai pu récupérer les icone de :
C:\Windows\system32\SHELL32.dll
C:\Windows\system32\imageres.dll
il sont ici :
https://www.transfernow.net/918i6144r9j1
Commenter la réponse de kikou93

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.