none
Crétion d'un setup avec BDD RRS feed

  • Question

  • Bonjour,

    J'ai un projet 'windows form' communiquant avec une BDD 'SQL Serveur Express'.

    Si je part du principe que sur le poste client, il n'y a  que le frameworks d'installé, comment puis-je integré à mon "setup" l'installation d'SQL Serveur Express l'installation de ma base et des différentes config : utilisateurs / table / ...

    Merci d'avance de vos suggestion.

    PS : Y a t-il un logiciel à priorisé sur la création de ce type de setup ?



    jeudi 6 février 2014 10:01

Réponses

  • Dans ce cas cet article vous sera utile:
    http://social.msdn.microsoft.com/Forums/windows/en-US/b32f7782-c905-4577-ab7c-a0827803eea3/packaging-sqlexpress-with-visual-studio-setup-project

    Vous ne devez créer la BD, vous devez inclure votre fichier .mdf dans le Setup,  pour qu'il soit copié dans le bon endroit pendant le Setup.

    Cordialement,


    Aurel BERA, MSFT
    MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
    S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.

    • Marqué comme réponse Dev_72 mardi 11 février 2014 23:27
    vendredi 7 février 2014 10:23
  • Bonjour,

    Pour ma part, je faisais cette petite manip. auparavant :

            private void Form1_Load(object sender, EventArgs e)
            {
                if (GlobalClass.Connexion == false)
                {
                    if (GlobalClass.ErrorSource == ".Net SqlClient Data Provider")
                    {
                        DialogResult msg = MessageBox.Show("Veuillez installer le composant qui va suivre pour pouvoir utiliser l'application", "Erreur survenue", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        if (msg == DialogResult.OK)
                        {
                            System.Diagnostics.Process.Start("explorer.exe", @".\Extension");
                        }
                        Application.Exit();
                    }
                    else
                    {
                        DialogResult msg = MessageBox.Show(/*"L'application a rencontré un problème lors du chargement et va maintenant se fermer, veuillez contacter une personne responsable"+*/ GlobalClass.ErrorMessageLoad, "Erreur survenue", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        if (msg == DialogResult.OK)
                        {
                            Application.Exit();
                        }
                    }
                }
            }

    Ceci est écrit en C# :  En fait, j'avais besoin de sql compact avec mon appli.

    A chaque démarrage de mon application, si sql compact n'était pas installé sur la machine, je récupérais la source de l'erreur qui était ".Net SqlClient Data Provider" et lorsque celle-ci se déroulais, l'utilisateur était invité à l'installer sinon l'appli. se fermait.

    Maintenant, oui, c'est un peu "barbare" comme méthode vu qu'en créant des setup, il y a surement moyen d'effectuer quelques conditions d'installations. 

    Allez peut-être voir du côté de inno setup ...

    En espérant vous avoir aidé.

    • Marqué comme réponse Dev_72 mardi 11 février 2014 23:27
    vendredi 7 février 2014 10:26

Toutes les réponses

  • Bonjour

    Quelle version de Visual Studio utilisez-vous?
    Pour les versions jusqu’à 2010 il y a un type de projet de Setup Microsoft, pour VS 2012 et 2013 on doit utiliser des applications tierces (WiX, InstallShield ou autres).

    Cordialement, 
     



    Aurel BERA, MSFT
    MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
    S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.


    • Modifié Aurel Bera vendredi 7 février 2014 08:44
    vendredi 7 février 2014 08:44
  • Bonjour,

    J'utilise Visual Basic Express 2010.

    Cordialement.


    vendredi 7 février 2014 10:06
  • Dans ce cas cet article vous sera utile:
    http://social.msdn.microsoft.com/Forums/windows/en-US/b32f7782-c905-4577-ab7c-a0827803eea3/packaging-sqlexpress-with-visual-studio-setup-project

    Vous ne devez créer la BD, vous devez inclure votre fichier .mdf dans le Setup,  pour qu'il soit copié dans le bon endroit pendant le Setup.

    Cordialement,


    Aurel BERA, MSFT
    MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
    S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.

    • Marqué comme réponse Dev_72 mardi 11 février 2014 23:27
    vendredi 7 février 2014 10:23
  • Bonjour,

    Pour ma part, je faisais cette petite manip. auparavant :

            private void Form1_Load(object sender, EventArgs e)
            {
                if (GlobalClass.Connexion == false)
                {
                    if (GlobalClass.ErrorSource == ".Net SqlClient Data Provider")
                    {
                        DialogResult msg = MessageBox.Show("Veuillez installer le composant qui va suivre pour pouvoir utiliser l'application", "Erreur survenue", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        if (msg == DialogResult.OK)
                        {
                            System.Diagnostics.Process.Start("explorer.exe", @".\Extension");
                        }
                        Application.Exit();
                    }
                    else
                    {
                        DialogResult msg = MessageBox.Show(/*"L'application a rencontré un problème lors du chargement et va maintenant se fermer, veuillez contacter une personne responsable"+*/ GlobalClass.ErrorMessageLoad, "Erreur survenue", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        if (msg == DialogResult.OK)
                        {
                            Application.Exit();
                        }
                    }
                }
            }

    Ceci est écrit en C# :  En fait, j'avais besoin de sql compact avec mon appli.

    A chaque démarrage de mon application, si sql compact n'était pas installé sur la machine, je récupérais la source de l'erreur qui était ".Net SqlClient Data Provider" et lorsque celle-ci se déroulais, l'utilisateur était invité à l'installer sinon l'appli. se fermait.

    Maintenant, oui, c'est un peu "barbare" comme méthode vu qu'en créant des setup, il y a surement moyen d'effectuer quelques conditions d'installations. 

    Allez peut-être voir du côté de inno setup ...

    En espérant vous avoir aidé.

    • Marqué comme réponse Dev_72 mardi 11 février 2014 23:27
    vendredi 7 février 2014 10:26
  • Bonjour,

    Merci beaucoup pour ce lien, il est très instuctif et effectivement c'est exactement ce que je recherchais.

    De plus rien n'interdit effectivement la petite routine au chargement de la form principale pour s'assurer que SQL serveur est bien installé on se sait jamais si l'utilisateur à refuser le CLUF au moment de l'installation de SQL serveur ce n'est pas ça qui empêchera l'installation de mon application.

    Merci pour toutes vos réponse.

    Cordialement,

    vendredi 7 février 2014 14:25
  • Bonjour

    On peut considérer le problème résolu?
    N'oubliez de marquer la réponse ou les réponses qui ont résolu votre problème.

    Cordialement,


    Aurel BERA, MSFT
    MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
    S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.

    mardi 11 février 2014 10:44
  • Merci!

    Cordialement,


    Aurel BERA, MSFT
    MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
    S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.

    mercredi 12 février 2014 09:06