Exception relevé dans une requête [Résolu]

cs_ShayW 3233 Messages postés jeudi 26 novembre 2009Date d'inscription 6 décembre 2017 Dernière intervention - 14 juil. 2015 à 22:11 - Dernière réponse : cs_ShayW 3233 Messages postés jeudi 26 novembre 2009Date d'inscription 6 décembre 2017 Dernière intervention
- 14 juil. 2015 à 23:18
Bonjour,

La requête

Public Sub InsertPlayer(ByVal FamillyName As String)

Dim command As New OleDbCommand
command.Connection = Connection
command.CommandText = "INSERT INTO Player (Name) VALUES ([?]);"
command.Parameters.Add("?", OleDbType.BSTR).Value = FamillyName
Try
command.ExecuteNonQuery()
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub


J'ai crée un setup d'installation qui installe le shorcut exe dans le user's desktop. La bdd (mdb) est placé dans un folder nommé auxfile crée lors de l'installation.

le problème surgit si j'installe le fichier msi dans le folder C:\Program Files (x86) ou C:\Program Files ;
L'installation se fait correctement mais ensuite je lance l'exe et la une erreur
Si j'installe dans un autre folder aucun problème
vraiment dans le brouillard

merci
Afficher la suite 

7 réponses

Répondre au sujet
ucfoutu 18022 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 13 décembre 2017 Dernière intervention - 14 juil. 2015 à 22:19
0
Utile
Bonjour,
Avec certains OS, l'installation dans le répertoire C:\Program Files est protégée et nécessite de se faire "en tant qu'administrateur"
Commenter la réponse de ucfoutu
cs_ShayW 3233 Messages postés jeudi 26 novembre 2009Date d'inscription 6 décembre 2017 Dernière intervention - 14 juil. 2015 à 22:26
0
Utile
Bonjour

Oui et Depuis Vista, le dossier Program files (son homologue Program Files (x86) ), ses dossiers et les fichiers y étant sont en lecture seule en exécution normale

Est que je peux forcer l'installation dans un dossier fixe que je crée
pendant l'installation ex C:\Jeux
ou faut il laisser libre choix au client ?
Commenter la réponse de cs_ShayW
NHenry 14003 Messages postés vendredi 14 mars 2003Date d'inscriptionModérateurStatut 13 décembre 2017 Dernière intervention - 14 juil. 2015 à 22:32
0
Utile
2
Il y a aussi la solution de mettre le fichier de base de données dans le dossier %appdata% de l'utilisateur, mais cela fera que chaque utilisateur aura un fichier différent.

Forcer le dossier n'est pas toujours bon, certaines personnes (certes rare) peuvent avoir le disque système en D: et non en C:.

A toi de voir.
ucfoutu 18022 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 13 décembre 2017 Dernière intervention - 14 juil. 2015 à 22:45
Bonjour, NHenry,

certaines personnes (certes rare) peuvent avoir le disque système en D: et non en C:.

Sous VBH6, j'utilise par prudence la fonction Environ
L'équivalent VB.Net semble être ===>>
https://msdn.microsoft.com/fr-fr/library/system.environment%28v=vs.110%29.aspx
NHenry 14003 Messages postés vendredi 14 mars 2003Date d'inscriptionModérateurStatut 13 décembre 2017 Dernière intervention - 14 juil. 2015 à 22:55
Commenter la réponse de NHenry
cs_ShayW 3233 Messages postés jeudi 26 novembre 2009Date d'inscription 6 décembre 2017 Dernière intervention - 14 juil. 2015 à 23:11
0
Utile
Bonsoir
le code de la db

 Dim path As String
path = Application.StartupPath & "\auxfile\db1.mdb"
Dim base As String = "provider=microsoft.jet.oledb.4.0;data source=" & path

si je place la bdd dans %appdata% que faut il écrire
path = ?
Commenter la réponse de cs_ShayW
cs_ShayW 3233 Messages postés jeudi 26 novembre 2009Date d'inscription 6 décembre 2017 Dernière intervention - 14 juil. 2015 à 23:18
0
Utile
j'ai trouvé

  path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)
Commenter la réponse de cs_ShayW

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.