Pregunta programación: VB y Bases de dados

Buenas, estoy haciendo unas practicas en francia, es mi primer curro de programador y en estoy en colegio haciendoles un programa. Soy el unico programador, asi que no hay nadie alli que me pueda despejar la incognica.

Resulta que de todos los programas que he hecho en clase, nunca he creado el exe y esta vez lo voy a tener que hacer y la duda es la siguente:

Para que la base de datos y el programa se comuniquen, tengo que agregar un DSN de sistema en "origines de datos" en herramientas administrativas, diciendole donde esta la base de datos y que nombre tiene.

Cuando yo haga el exe y lo vaya a ejecutar en X maquina, tendre que agregar previamente el DSN?

Saludos!
No hace falta que crees un DSN.

Supongo que estarás utilizando un control de conexión a base de datos como ado o cualquier otro.
Normalmente estos controles tienen una propiedad que se suele llamar "string de conexion" que desde mi punto de vista es mejor que crearte un dsn. Ese string de conexión es particular dependiendo de a que bbdd te quieres conectar. Por ejemplo si la bbdd es access sería algo como "provider=microsoft jet x.0; file=ruta hacia el archivo".
Si es a un servidor de bbdd com sql server el string sería distinto. Pero normalmente estos controles tienen un asistente que te genera el string de conexión con unos clicks :)

Si vas a generar un exe, y luego vas a instalar esa aplicación en otros pc, yo me crearía un paquete de instalación y así te aseguras de que se instalan todas las librerías necesarias para que funcione el programa. Por ejemplo si intentas acceder a una base de datos access y en el pc no hay instalado Access necesitarás instalar por lo menos la runtime de access. La runtime la podrás incluir con el paquete de instalación, así te aseguras de que se instala y que la máquina donde instales el programa, éste funcione correctamente.

Si es contra sql server o otro proveedor necesitarás tener instaladas otras librerías.
Vale, acabo d encontrar que debo d utilizar esto:

ADOCONN.ConnectionString = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source=" + App.Path + "\VAL.mdb"


Debo de substituir el App.Path con el path real donde va a estar? Y si lo cambio luego? :S
App.path te devuelve la ruta desde donde se está ejecutando el programa, normalmente si lo has instalado en "c:\Archivos de programa\Aplicacion" pues te devolverá esto. Cuando lo estás ejecutando desde el compilador de Vb te devolverá la ruta donde está el proyecto.

Puedes cambiar la ruta cuando tú quieras, tanto por programa como fijarla en una constante, lo que quieras.
suponia q era algo asi, pero me dice que no he declarado App :S
4 respuestas