IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Comment créer un raccourci de fichier avec VB6


Sujet :

VB 6 et antérieur

  1. #1
    Membre averti
    Homme Profil pro
    Développeur VB6 et tout neuf en .Net
    Inscrit en
    Avril 2005
    Messages
    377
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VB6 et tout neuf en .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 377
    Points : 446
    Points
    446
    Par défaut Comment créer un raccourci de fichier avec VB6
    Bonjour a tous,

    Je souhaite créer un raccourci sur le bureau àa partir de mon programme VB.
    Après une rapide recherche (peut-être trop rapide) je n'ai rien trouvé qui me plaise.

    Auriez-vous une idée ?

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Points : 1 418
    Points
    1 418
    Par défaut
    Hum, y'a une api qui doit bien se planquer c'est sûr !

    Sinon, l'idée serait d'ouvrir un raccourci quelconque (.pif ? autre?) avec un éditeur binaire, de repérer le pointeur sur le chemin de l'icône et du repertoire / fichier correspondant au raccourci puis de générer un fichier semblable avec tes propres valeurs.

    Ce n'est pas du tout la bonne méthode car la compatibilité ascendante du soft est brisée, mais ça peut dépanner.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 730
    Points : 876
    Points
    876
    Par défaut
    Salut,

    Tu devrais p'tet jeter un oeil au setup1.vbp de VB. Il en crée bien des raccourcis sur le bureau user, lui !

    Edit : Euh.. autant pour moi, j'ai un doute sur la création du raccourci par Setup1.vbp

  4. #4
    Membre averti
    Homme Profil pro
    Développeur VB6 et tout neuf en .Net
    Inscrit en
    Avril 2005
    Messages
    377
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VB6 et tout neuf en .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 377
    Points : 446
    Points
    446
    Par défaut
    Merci à vous deux

    Après une recherche plus approfondie voici ce que j'ai fait.
    Le problème, je n'ai pas trouvé la description des objets utilisés.
    Pour certains paramétré il faut y aller en aveugle et essayer...

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    Private Sub Command1_Click()
      CreateShortcut "c:\test de raccourci.lnk", "d:\MonProgramme.exe", "e:\", "/Debug", "Essai de description"
    End Sub
     
    Private Sub CreateShortcut(ByVal NomRaccourci As String, _
                               ByVal FichierCible As String, _
                               Optional ByVal DemarrerDans As String = "", _
                               Optional ByVal Arguments As String = "", _
                               Optional ByVal Description As String = "", _
                               Optional ByVal Hotkey As String = "", _
                               Optional ByVal Icone As String = "", _
                               Optional ByVal WindowsStyle As Long = 4)
     
      Dim WSHShell                      As Object
      Dim A                             As Object
     
      Set WSHShell = CreateObject("WScript.Shell")
      If right(NomRaccourci, 4) <> ".lnk" And right(NomRaccourci, 4) <> ".url" Then
        NomRaccourci = NomRaccourci & ".lnk"
      End If
      Set A = WSHShell.CreateShortcut(NomRaccourci)
     
      A.TargetPath = FichierCible
      A.WorkingDirectory = DemarrerDans
      A.Arguments = Arguments
      A.Description = Description
      A.Hotkey = Hotkey
     
      If Icone = "" Then Icone = FichierCible & ", 0"
      A.IconLocation = Icone  'Exemple : notepad.exe, 0
      A.WindowStyle = WindowsStyle
      A.Save
    End Sub
    Si vous avez mieux et surtout plus commenté, je suis preneur !

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    29
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 29
    Points : 27
    Points
    27
    Par défaut
    Dans la FAQ VB6...

    Ajoutez la référence Windows Script Host Object Model (wshom.ocx) à votre projet.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim Wsh As New WshShell
     
    DesktopPath = Wsh.SpecialFolders("Desktop")
    Set Shortcut = Wsh.CreateShortcut(DesktopPath & "\Test.lnk")
    With Shortcut
        .TargetPath = App.EXEName
        .Description = "Mon Programme"
        .WindowStyle = 4
        .Save
    End With
    Original ici : http://vb.developpez.com/faq/?page=Systeme#shortcut

  6. #6
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Points : 1 418
    Points
    1 418
    Par défaut

  7. #7
    Membre averti
    Homme Profil pro
    Développeur VB6 et tout neuf en .Net
    Inscrit en
    Avril 2005
    Messages
    377
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VB6 et tout neuf en .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 377
    Points : 446
    Points
    446
    Par défaut
    merci LiBasic

    Comme quoi, on ne lit jamais assez les FAQ

  8. #8
    Expert éminent sénior
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 102
    Points : 16 619
    Points
    16 619
    Par défaut
    Moi j'ai trouvé la même chose sur DVP, mais ou, pas moyen de retrouvé non plus , donc je ne peux mettre le lien.
    J'avais dût rajouter des commentaires perso, je sais plus
    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
    26
    27
    28
    29
    30
    31
    32
    33
    Private Sub Command1_Click()
    Dim DesktopPath
    Dim Shortcut
    Dim Wsh As New WshShell
    'Wsh.SpecialFolders =
    'AllUsersDesktop -->pour le Burreau Windows (quelque soit le sessionniste)
    'AllUsersStartup pour -->Démarrer-->Tous les programmes-->Démarage (quelque soit le sessionniste)
    'AllUsersPrograms pour -->Démarrer-->Tous les programmes (quelque soit le sessionniste)
    'Desktop pour --> pour le Burreau Windows (du sessionniste)
    'Favorites "C:\Documents and Settings\francis\Favoris" (Btn. Favoris de l'explorateur)
    'Fonts bizard non valide
    'MyDocuments pour -->Démarrer-->Mes documents
    'NetHood Menu Favoris Réseau "C:\Documents and Settings\francis\Voisinage réseau"
    'PrintHood "C:\Documents and Settings\francis\Voisinage d'impression"
    'Programs pour -->Démarrer-->Tous les programmes (du sessionniste)
    'Recent (Historique) C:\Documents and Settings\francis\Recent
    'SendTo C:\Documents and Settings\francis\SendTo
    'StartMenu pour partie haute de -->Démarrer-->Tous les programmes
    'Startup pour -->Démarrer-->Tous les programmes-->Démarage (du sessionniste)
    'Templates "C:\Documents and Settings\francis\Modèles"
     
    DesktopPath = Wsh.SpecialFolders("Desktop")
    Set Shortcut = Wsh.CreateShortcut(DesktopPath & "\ATest.lnk")
    'WshShortcut.Save: dans la fenetre de propriété
    With Shortcut
        .TargetPath = "C:\PersoFrancis\Lecteur Win32API\WIN32APIVB.exe" 'cible
        .Description = "Mon Programme" 'commentaire
        .WindowStyle = 4 'correspondant au style de la fenêtre dans laquelle le programme est exécuté
        .WorkingDirectory = "C:\PersoFrancis\Lecteur Win32API" 'Démarer dans (nouveau repertoire en cours)
        .Hotkey = "CTRL+SHIFT+F" 'Touche de raccourci pour lancer le raccourci.
        .Save ' creation du racourci
    End With
    End Sub
    Motif de l'edit, je retire ou pas

  9. #9
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    Dans mon composant DiFIleTools (Suivre le lien dans ma signature), il y a deux fonctions qui font çà:

    CreatDeskTopShellLink pour réer un raccourci sur le bureau
    et
    CreatStartShellLink pour créer unraccourci dans le menu démarrer

    Pour le faire, j'utilise la dll de vb6 : VB6STKIT.DLL

    Pour ceux interressé, le source est fourni.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [batch] Comment créer un raccourci vers un fichier ?
    Par koKoTis dans le forum FAQs Windows
    Réponses: 1
    Dernier message: 13/11/2013, 20h40
  2. comment partager un fichier avec VB6
    Par Virtualité dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 24/02/2011, 17h41
  3. [VB6] Comment Désactiver et activer le clavier avec VB6
    Par filton dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 08/03/2006, 14h14
  4. Réponses: 5
    Dernier message: 01/03/2006, 11h14
  5. Réponses: 0
    Dernier message: 17/10/2005, 08h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo