VB.NET: Créer un programme d'installation

Résolu/Fermé
Anonyme209 Messages postés 678 Date d'inscription samedi 6 octobre 2012 Statut Membre Dernière intervention 22 décembre 2020 - 23 mars 2015 à 20:23
Anonyme209 Messages postés 678 Date d'inscription samedi 6 octobre 2012 Statut Membre Dernière intervention 22 décembre 2020 - 17 juin 2015 à 18:25
Bonjour,

Je voudrais savoir comment faire un programme d'installation en VB.NET.
Je ne parle pas du type de projet setup de Visual Studio, je souhaite le programmer en application Windows Forms.
J'ai donc besoin:
-Que le programme soit considéré comme un programme d'installation (par exemple, lorsque l'installation d'un programme échoue, Windows affiche le message "Ce programme pourrait ne pas s'être installé correctement.")
-Que le programme qui doit être installé apparaisse dans la liste des programmes et fonctionnalités (donc qu'il soit considéré comme un programme installé).

Merci de votre aide.
A voir également:

2 réponses

Célien Messages postés 5729 Date d'inscription jeudi 8 mai 2008 Statut Membre Dernière intervention 9 septembre 2021 1 991
24 mars 2015 à 16:49
Salut,

Le plus simple serais d'utiliser un programme d'installation genre installshield, mais il existe aussi des équivalents dans le monde libre comme par exemple excellents innosetup.
0
Anonyme209 Messages postés 678 Date d'inscription samedi 6 octobre 2012 Statut Membre Dernière intervention 22 décembre 2020 15
24 mars 2015 à 17:30
Bonjour,

Cela ne répond pas à ma question.
Je n'ai pas demandé un logiciel qui ferait des programmes d'installation à ma place, j'ai demandé comment faire son propre programme d'installation en VB.NET, sans utiliser le type de projet "Setup".
Les programmes que tu as cités ne permettent pas de personnaliser entièrement le programme.
0
Célien Messages postés 5729 Date d'inscription jeudi 8 mai 2008 Statut Membre Dernière intervention 9 septembre 2021 1 991
Modifié par Célien le 24/03/2015 à 17:48
Si, ces programmes sont très puissants et permettent de personnaliser entièrement le programme d'installation, ce sont des outils spécialisés, mais des vrais outils de développement, ils sont faits pour ça. Donc soit tu les utilises et tu fait un très bon boulot rapidement, soit tu essayes de refaire la même chose sous VB.NET mais ça sera 100 fois plus long et 100 fois plus difficile c'est ton choix.
0
Anonyme209 Messages postés 678 Date d'inscription samedi 6 octobre 2012 Statut Membre Dernière intervention 22 décembre 2020 15
24 mars 2015 à 18:07
Dans ce cas, explique-moi comment faire, avec innosetup:
- Personnaliser la fenêtre (taille, couleur etc.)
- Choisir le code de désinstallation (par exemple, supprimer un dossier, une clé de registre etc... ATTENTION: Avec cet exemple, le dossier ou la clé ne sera pas forcément créé(e) lors de l'installation, mais par le programme installé).
- Rajouter des options lors de l'installation/désinstallation (par exemple, spécifier un nom d'utilisateur, rajouter une case à cocher etc.)
0
Célien Messages postés 5729 Date d'inscription jeudi 8 mai 2008 Statut Membre Dernière intervention 9 septembre 2021 1 991
24 mars 2015 à 18:49
Il y à pas tout mais ça te donnera une idée : Tutoriel innosetup, pour les fonctions avancées regarde l'outil lui même et la doc.
0
Anonyme209 Messages postés 678 Date d'inscription samedi 6 octobre 2012 Statut Membre Dernière intervention 22 décembre 2020 15
25 mars 2015 à 14:12
Si, ces programmes sont très puissants et permettent de personnaliser entièrement le programme d'installation


Si, finalement, inno setup ne permet pas de personnaliser entièrement, je repose la question du début: comment créer un programme d'installation en VB.NET
. (Ce n'est pas grave si c'est
100 fois plus long et 100 fois plus difficile
).
0
Anonyme209 Messages postés 678 Date d'inscription samedi 6 octobre 2012 Statut Membre Dernière intervention 22 décembre 2020 15
Modifié par Anonyme209 le 17/06/2015 à 18:28
Bonjour,

J'ai trouvé la solution tout seul:
Il faut d'abord générer un GUID aléatoire.
Pour que le programme apparaisse dans la liste des programmes et fonctionnalités, il faut créer la clé de registre
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{guid application}

ensuite dans cette clé il faut créer (au moins) ces valeurs:
DisplayName //(le nom de l'application)
DisplayVersion //(la version de l'application)
InstallDate //(année mois jour sans espace: 20151706)
Publisher //(le nom du créateur)
UninstallString //(l'adresse du fichier de désinstallation (si créé))

valeurs supplémentaires:
HelpLink //(le lien Internet vers une éventuelle page d'aide en ligne)
URLInfoAbout //(l'éventuel lien Internet d'informations relatives à l'application)
URLUpdateInfo //(l'éventuel lien Internet fournissant des infos sur les mises à jour)
NoModify //(si défini sur 1, l'option "Modifier" n'apparaîtra pas dans la panneau de configuration pour cette application)
NoRepair //(si défini sur 1, l'option "Réparer" n'apparaîtra pas dans la panneau de configuration pour cette application)


Ensuite, pour les raccourcis, j'ai trouvé ce code:
 Dim WSHShell = CreateObject("WScript.Shell")
Dim Shortcut = WSHShell.CreateShortcut("raccourci.lnk")
With Shortcut
    .TargetPath = WSHShell.ExpandEnvironmentStrings("adresse_executable_application.exe")
    .IconLocation = WSHShell.ExpandEnvironmentStrings("emplacement_icone_raccourci", 0)
    .Description = "description_application"
End With
Shortcut.Save()

(Il faut adapter pour ne pas recréer le raccourci en cas de mise à jour de l'application)

Enfin, il ne reste plus qu'à créer le dossier d'installation et y copier les fichiers de l'application. Quand lesdits fichiers sont importés dans les ressources du projet, il suffit de faire:
My.Computer.FileSystem.WriteAllBytes("dossier\nom_fichier.extension", My.Resources.Fichier, False)


Si vous souhaitez faire un programme de désinstallation, il vous suffit de lui faire supprimer la clé de registre, les raccourcis et le dossier d'installation créés.
0