Projet d'installation avec fichiers redistributables

Signaler
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
-
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
-
Bonjour,

comment créer un projet d'installation avec fichiers redistributables ?
pour le développement du projet j'ai téléchargé et installé plusieurs msi
1 x86_MicrosoftSpeechPlatformSDK\MicrosoftSpeechPlatformSDK.msi
2 x86_SpeechPlatformRuntime\SpeechPlatformRuntime.msi
3 MSSpeech_TTS_fr-FR_Hortense.msi

j'essaie de créer un setup mais je ne sais pas comment ajouter les msi ?
Merci

5 réponses

Messages postés
378
Date d'inscription
samedi 22 septembre 2012
Statut
Membre
Dernière intervention
13 août 2017
14
Bonjour cs_ShayW,

Lorsque j'ai besoin d'un fichier afférent à un projet, j'utilise la procédure suivante
Private Function DossierProjet() As String
Dim Dos As String
Dos = Application.StartupPath : Dos = GetDirectoryName(Dos) : Dos = GetDirectoryName(Dos)
Return Dos
End Function
qui renvoie, calculé d'après le programme, le chemin d'accès du projet. Je mets alors dans ce pseudo-dossier tout fichier qu'il me plaira. Je sais que c'est parfaitement iconoclaste (j'aime ça), mais cela ne vous coûterais rien d'essayer.

Cordialement.
--
Étant illettré, je signe d'une croix : ×
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
50
Bonjour

J'ai du mal expliqué
Pour un projet j'ai du télécharger et installer une voix française
fichier MSI
pour s'en servir avec le system.speech
Imports System.Speech
Imports System.Speech.Synthesis
synth = New SpeechSynthesizer
synth.SelectVoice("ScanSoft Virginie_Dri40_16kHz")
synth.Rate = 0

Si je créer un set up et installe le projet dans un autre pc
une exception va etre relevé car la voix française est absente
La question est faut il que dans l'autre pc télécharger et installer
la voix française fichier msi ou bien lors de la création du projet
d'installation ajouter les dll externes nécessaires.
La le problème je ne sais pas quels dlls.
Mais je pense qu'on est obligé d'installer tout le projet voix française
Messages postés
7373
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
10 mai 2021
122
Bonjour,

Voir ceci, il parle de rajouter des dll au projet. Je pense que si tu ajoutes des dll elles vont être empaqueter avec le projet.

http://www.robot-maker.com/index.php?/tutorials/article/66-faire-parler-un-pc-avec-vbnet/
Messages postés
7373
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
10 mai 2021
122
cs_ShayW , effectivement il faut faire l'installation de la voix chez l'utilisateur. J'ai installé Virginie pour voir, l'installation ce trouve dans 2 endroits à ma connaissance:
dans le registre
HKEY_LOCAL_MACHINE\SOFTWARE\ScanSoft\TTS\SAPI5
sur le disque dur
C:\Program Files (x86)\ScanSoft\RealSpeakSolov4

A mon avis tu pourrais détecter si la voix est installée chez l'utilisateur, et l'installer si besoin est. Tu mets l'exe RSSolo4FrenchVirginie.exe dans le dossier Debug de ton installation.

Je me suis amusé a faire un petit code pour cela, tu trouveras certainement mieux!

Option Strict On
Imports System.Speech
Imports System.Speech.Synthesis
Public Class Form1
Dim s As SpeechSynthesizer = New SpeechSynthesizer() ' declaration du systeme de narration
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'au chargementde la forme:
Dim i As Integer
Dim listString As String
Dim reponse As String
Dim listevoix = s.GetInstalledVoices 'listevoix est egale a la liste des voix installer
reponse = "Virginie"
For Each v As InstalledVoice In listevoix 'je charge chaque voix installer et les affiche
ListBox1.Items.Add(v.VoiceInfo.Name) '
Next
'je cherche si Virginie est installée
For i = 0 To ListBox1.Items.Count - 1
listString = CStr(ListBox1.Items.Item(i))
If CBool(InStr(listString.ToLower, reponse.ToLower)) Then
ListBox1.SelectedItems.Add(listString)
End If
Next
' MessageBox.Show("Recherche terminée.", "Recherche", MessageBoxButtons.OK, MessageBoxIcon.Information)
listString = Nothing
If ListBox1.SelectedIndex <= 0 Then
Process.Start(Application.StartupPath & "\RSSolo4FrenchVirginie.exe") 'lancement de l'installation
Else
'rien
End If
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ' quand je clics sur le bouton1
Dim texte As String = "Il est " & Now.Hour & " heure et " & Now.Minute & "Minute" 'declaration du texte
Dim voix As String = CStr(ListBox1.SelectedItem) 'la voixest egale la selection du combobox
s.SelectVoice(voix) ' je choisi la voix
s.Speak(texte) 'je lis le texte
End Sub
'emplacement de RSSolo4FrenchVirginie
'HKEY_LOCAL_MACHINE\SOFTWARE\ScanSoft\TTS\SAPI5
'C:\Program Files (x86)\ScanSoft\RealSpeakSolov4
End Class

Bon WE

Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
50
Bonjour cs_Le Pivert
cs_ShayW , effectivement il faut faire l'installation de la voix chez l'utilisateur.
Oui il n'y a pas d'autre solution

Tu mets l'exe RSSolo4FrenchVirginie.exe dans le dossier Debug de ton installation.

je n'avais pas pensé je vais tester pour voir
Bon Week end