Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour à tous,
J'ai une application écrite en PB9. Si je créé un exécutable, mon application va fonctionner car la source ODBC me permettant de me
connecter à ma base de données existe sur mon PC. Cependant, si je souhaite déployer cette appli sur une autre machine, elle ne
va pas fonctionner car effectivement la source ODBC sera introuvable.
Hormis le fait de recherche toutes les clés dans la base de registre qui permettent de créer la source ODBC et le créer via le script,
n'existe-t-il pas un moyen de créer plus facilement une source de données ODBC lors du déploiement d'une application.
Par avance, merci.
Doctor Z.
Hors ligne
Bonjour, peux-tu préciser de quel type de base il s'agit ?
Hors ligne
Regarde ici , ca pourrait peut-être t'aider
http://www.experts-exchange.com/Program … 95476.html
http://blogs.technet.com/heyscriptinggu … cript.aspx
http://www.enterpriseitplanet.com/resou … hp/3089341
Dernière modification par johnpelu (11-03-2010 14:39:06)
Hors ligne
Bonjour,
Il faudra également que tu déploies avec ton application le drivers ODBC adéquat.
Avec une base de données ASA, tu n'es pas forcément obligé de créer une source de données ODBC, tu peux réaliser une connexion dite : "dsn less" :
string ls_connectstring ls_connectstring = "Driver=dbodbc8.dll;UID=dba;PWD=sql;DBN=utility_db;Agent=Engine;Eng=utility;Start=dbeng8 -n utility" ltr_utility = CREATE Transaction ltr_utility.DBMS = "ODBC" ltr_utility.DBParm = "ConnectString='" + ls_connectstring + "'" CONNECT USING ltr_utility;
Sinon effectivement, tu devras faire un script pour créer la source de données ODBC.
Hors ligne
Bonjour et merci pour tes réponses.
C'est de l'ASA8, mais ça pourrait tout aussi bien être un clien Oracle ou même MySQL, par exemple.
En fait, ce que je cherche à faire c'est à créer via l'exécution de mon exécutable le client de base
de données afin que je puisse travailler avec mon application en dehors du PC sur lequel j'ai développé
cette appli.
Doctor Z.
Hors ligne
buck a écrit:
Bonjour,
Il faudra également que tu déploies avec ton application le drivers ODBC adéquat.
Avec une base de données ASA, tu n'es pas forcément obligé de créer une source de données ODBC, tu peux réaliser une connexion dite : "dsn less" :Code: pb
string ls_connectstring ls_connectstring = "Driver=dbodbc8.dll;UID=dba;PWD=sql;DBN=utility_db;Agent=Engine;Eng=utility;Start=dbeng8 -n utility" ltr_utility = CREATE Transaction ltr_utility.DBMS = "ODBC" ltr_utility.DBParm = "ConnectString='" + ls_connectstring + "'" CONNECT USING ltr_utility;
Sinon effectivement, tu devras faire un script pour créer la source de données ODBC.
Salut buck,
Si le fichier dbodbc8.dll n'existe pas sur le poste cible, comme puis-je faire ?
Doctor Z.
Hors ligne
Bonjour,
Je livre actuellement mon application en ASA 8. Il faut effectivement déployer avec ton application le client ODBC de la base de données pour ASA 8 (+ fichiers nécessaires au démarrage de la base données, si tu travailles avec un moteur local) :
dbcon8.dll, dbctrs8.dll, dblgen8.dll, dbserv8.dll, dbodbc8.dll, dblgfr8.dll, dbeng8.exe
- 2 - Configurer la base de registre pour déclarer le pilote ODBC SQL Anywhere 8.0
- 3 - Configurer la source de données ODBC pour te connecter à la base de données
Effectivement, comme tu le craignés, il faudra y-passer un peu de temps pour écrire les routines pour réaliser tout cela.
Hors ligne
Merci pour vos réponses.
OK, donc si je souhaite faire cela avec une autre base de données je devrai livrer également les DLL du client de cette base.
Merci encore.
Doctor Z.
Hors ligne
En ce qui concerne Oracle : http://pbadonf.fr/forum/viewtopic.php?id=1841
Hors ligne