Soyez le premier à donner votre avis sur cette source.
Snippet vu 8 208 fois - Téléchargée 44 fois
'Dans la feuille frmSetup1 de Setup1.vbp, modifier la dernière procédure comme suit : Private Sub Form_Unload(Cancel As Integer) Dim Chemin As String, Réponse As Long, Bureau As String, Compteur As Integer Dim RetourFonction As Long, Arguments As String Chemin = Space(300) 'on crée un tampon, sinon ça foire) Réponse = SHGetSpecialFolderPath(Me.hwnd, Chemin, 16, 0) '16 désigne le bureau If (Réponse <> 0) Then Chemin = Left(Chemin, InStr(Chemin, vbNullChar) - 1) 'on enlève le superflu Else 'la fonction n'a pas marché (on ne sait jamais) End If For Compteur = Len(Chemin) To 1 Step -1 ' on cherche le nom du bureau : Bureau ? Desktop ? ... If Mid$(Chemin, Compteur, 1) = "\" Then Exit For Next Compteur Bureau = "..\.." & Mid$(Chemin, Compteur) ' le chemin du bureau Bureau = strUnQuoteString(Bureau) ' on enlève les éventuels guillemets Arguments = "" RetourFonction = OSfCreateShellLink(Bureau & vbNullChar, gstrAppName, gstrDestDir & gstrAppName, Arguments & vbNullChar, True, gsPROGMENUKEY) CleanUpCabs End Sub Ajouter aussi dans la section déclarations du module basCommon(common.bas) la déclaration : Public Declare Function SHGetSpecialFolderPath Lib "Shell32.dll" Alias "SHGetSpecialFolderPathA" (ByVal hwndOwner As Long, ByVal lpszPath As String, ByVal nFolder As Long, ByVal fCreate As Long) As Long
9 mars 2011 à 17:14
Ce code (celui de Nicolas75) fonctionne très bien sous XP, mais donne une erreur sous W7. Il semble que le chemin du Desktop soit différent... commnet contourner ce pb ???
Merci pour vos réponses.
7 juil. 2007 à 00:01
6 sept. 2005 à 09:58
merci
30 mars 2005 à 11:23
J'ai découvert au moins un problème.
Lorsque je compile Setup1, la version compilée ne se met pas dans PDWizard mais dans Visual Studio (pourquoi, alors qu'elle le fait avec l'autre méthode ?), dons je conservais l'ancien Setup1.exe.
J'ai donc déplacé manuellement le nouveau Setup1.exe et maintenant je vois la CheckBox.
Mais j'ai ensuite une "Erreur lors de la création de l'icone..."
En faisant "ignorer" j'installe le programme mais sans l'icone.
Je ne vois pas d'où vient cette erreur.
Peux-tu m'envoyer Setup1.exe, et peut être Setup1.bas
Mon adresse eric(point)barsalou(at)Wanadoo.fr
Remplacer (point) par . et (at) par @ bien sûr.
Merci d'avance.
P.S. j'ai VB6 SP6 version initiation
30 mars 2005 à 10:30
Je te confirme que chez moi tout marche à merveille.
Pour info j'utilise VB 6 SP5.
Je ne comprend pas très bien quand tu dis ne pas voir la Checkbox sur la form frmBegin.
As-tu vérifié que sa propriété visible est à True (sans vouloir t'offenser) :-).
Mais il est vrai que ce n'est pas indispensable, c'est seulement pour donner le choix à l'utilisateur d'installer le raccourci ou non.
Pour essayer de répondre à ta question,
Vérifie que les fonctions et procédures SHGetSpecialFolderLocation CreateShellLink existe bien dans le module BasSetup1.bas.
As-tu un message d'erreur suite aux modifs que tu as apportées ?
As-tu créé le fichier Setup1.exe puis le copié dans le dossier "C:\Program Files\Microsoft Visual Studio\VB98\Wizards\PDWizard" à la place du précédent ?
Si oui, après une insttall vérifie que le fichier ST6UNST.LOG a bien pris en compte la création de l'icône (c'est un fichier texte).
Si tu veux je peux te faire parvenir le fichier setup1.exe que j'ai modifié par e-mail.
laisse moi juste une adresse.
A+
Nicolas
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.