elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  [Ayuda] Sistema en VB.Net
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: [Ayuda] Sistema en VB.Net  (Leído 9,392 veces)
oscarj24

Desconectado Desconectado

Mensajes: 65


Ver Perfil
[Ayuda] Sistema en VB.Net
« en: 10 Julio 2010, 01:50 am »

Hola a todos, queria preguntarles algo

he creado un sistema en vb.net que se conecta a una base de datos mysql
de un servidor web mediante ODBC.

El problema es que no consigo que el ejecutable se conecte a la DB si es que no se instala el driver ODBC en la PC donde se correra la aplicacion

Mi pregunta es: hay alguna forma de crear una referencia a ODBC... alguna dll? para no tener que instalar el ODBC driver en cada pc donde se va a ejecutar la aplicacion?...

gracias y espero me puedan ayudar

PD. Me conecto mediante una cadena de conexion, nada de DSN ya que es un problema .. saludos! ;D


En línea

[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: [Ayuda] Sistema en VB.Net
« Respuesta #1 en: 10 Julio 2010, 04:16 am »

HINT: System.Data.Odbc

O, mejor aún googlea alguna clase de conexión a MySql que deben de haber algunas por ahí!

:)


En línea

oscarj24

Desconectado Desconectado

Mensajes: 65


Ver Perfil
Re: [Ayuda] Sistema en VB.Net
« Respuesta #2 en: 10 Julio 2010, 18:35 pm »

Gracias por la informacion pero aun no consigo hacer lo que decia en mi post... de todas maneras vale el intento  ;D
En línea

43H4FH44H45H4CH49H56H45H
Wiki

Desconectado Desconectado

Mensajes: 502



Ver Perfil
Re: [Ayuda] Sistema en VB.Net
« Respuesta #3 en: 11 Julio 2010, 16:14 pm »

Yo uso MySQL Connector Net 5.1.7, para hacerlo portable solo se necesita copiar MySql.Data.dll (que esta en archivos de programa\mysql\... )a la carpeta del proyecto y hacer la referencia a la misma. Asi se puede ejecutar la aplicacion en cualquier PC solo con MySql.Data.dll al lado de la aplicación y sin instalar nada más.
En línea


-R IP
:0100
-A 100 
2826:0100 MOV AH,09
2826:0102 MOV DX,109
2826:0105 INT 21
2826:0105 MOV AH,08
2826:0105 INT 21
2826:0107 INT 20
2826:0109 DB 'MI NICK ES CODELIVE.$' 
2826:0127 
-R BX
:0000
-R CX
:20
-N CODELIVE.COM
-W
oscarj24

Desconectado Desconectado

Mensajes: 65


Ver Perfil
Re: [Ayuda] Sistema en VB.Net
« Respuesta #4 en: 11 Julio 2010, 18:36 pm »

Si he intentado eso pero con la dll del MySQL ODBC Connector que esta en Archivos de Programa/Mysql/ y eso... pero cuando intento agregar la referencia a dicha dll me aparece un mensaje de error que dice que la dll no es valida o no es del componenete de ensamblado correcto, algo asi.

Que pasaria si intentaria usar el driver que tu usas, funcionaria??
En línea

oscarj24

Desconectado Desconectado

Mensajes: 65


Ver Perfil
Re: [Ayuda] Sistema en VB.Net
« Respuesta #5 en: 11 Julio 2010, 18:51 pm »

Yo uso MySQL Connector Net 5.1.7, para hacerlo portable solo se necesita copiar MySql.Data.dll (que esta en archivos de programa\mysql\... )a la carpeta del proyecto y hacer la referencia a la misma. Asi se puede ejecutar la aplicacion en cualquier PC solo con MySql.Data.dll al lado de la aplicación y sin instalar nada más.

Otra consulta? como haces tu cadena de conexion con dicho driver? en mi caso con el MySQL ODBC Connector es asi:

Public con As New OdbcConnection("Driver={MySQL ODBC 5.1 Driver};Server=server.com;Database=db; User=user;Password=pass;Option=3")

como es con MySQL Connector .Net? Estoy intentado conectarme a una db remota
« Última modificación: 11 Julio 2010, 19:17 pm por oscarj24 » En línea

[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: [Ayuda] Sistema en VB.Net
« Respuesta #6 en: 11 Julio 2010, 20:08 pm »

Pues la cadena de conexión está bien!
En línea

oscarj24

Desconectado Desconectado

Mensajes: 65


Ver Perfil
Re: [Ayuda] Sistema en VB.Net
« Respuesta #7 en: 11 Julio 2010, 21:17 pm »

Creo que no me entienden, lo que intento hacer es conectarme a una DB remota (ya lo he conseguido) el problema esta al hacer portable mi aplicacion ya que los drivers no se adjuntan a la aplicacion y, por lo tanto, no logro conexion.

Utilizo MySQL ODBC Driver pero al hacer referencia a la DLL de dicho driver para que el proyecto se ejecute siempre sin problemas, no me lo permite ya que el visual dice que no es una dll valida

Por lo tanto, opte por usar el ODBC .NET y si me permitio hacer una referencia a "Microsoft.Data.Odbc.dll" pero solo permite conexiones ADO, Oracle, y SQL Server pero MySQL creo que no.

Y nose que mas hacer para que funcione  ;D
Espero haberme explicado bien, saludos
En línea

43H4FH44H45H4CH49H56H45H
Wiki

Desconectado Desconectado

Mensajes: 502



Ver Perfil
Re: [Ayuda] Sistema en VB.Net
« Respuesta #8 en: 11 Julio 2010, 21:19 pm »

Otra consulta? como haces tu cadena de conexion con dicho driver? en mi caso con el MySQL ODBC Connector es asi:

Public con As New OdbcConnection("Driver={MySQL ODBC 5.1 Driver};Server=server.com;Database=db; User=user;Password=pass;Option=3")

como es con MySQL Connector .Net? Estoy intentado conectarme a una db remota

un ejemplo simple en C#:

Código
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using MySql.Data.MySqlClient;
  10.  
  11. namespace SampleMySql
  12. {
  13.    public partial class Form1 : Form
  14.    {
  15.        public Form1()
  16.        {
  17.            InitializeComponent();
  18.        }
  19.  
  20.        private void button1_Click(object sender, EventArgs e)
  21.        {
  22.            MySqlConnection Conexion = new MySqlConnection("Database=mysql; Data Source=localhost; User Id=root; Password=mypass;");
  23.            Conexion.Open();
  24.            MySqlCommand ComandoSelect = new MySqlCommand("Select * from db");
  25.  
  26.            ComandoSelect.Connection = Conexion;
  27.  
  28.            MySqlDataReader Resultado;
  29.            Resultado = ComandoSelect.ExecuteReader();
  30.            MySqlDataReader ResultadoScema = Resultado;
  31.            while (ResultadoScema.Read())
  32.            {
  33.                listBox1.Items.Add(ResultadoScema.GetString(3));
  34.            }
  35.            ResultadoScema.Close();
  36.        }
  37.    }
  38. }
  39.  

Esta es la que uso:

http://dev.mysql.com/downloads/connector/net/5.1.html

Y funciona remotamente o localmente (da igual).
En línea


-R IP
:0100
-A 100 
2826:0100 MOV AH,09
2826:0102 MOV DX,109
2826:0105 INT 21
2826:0105 MOV AH,08
2826:0105 INT 21
2826:0107 INT 20
2826:0109 DB 'MI NICK ES CODELIVE.$' 
2826:0127 
-R BX
:0000
-R CX
:20
-N CODELIVE.COM
-W
oscarj24

Desconectado Desconectado

Mensajes: 65


Ver Perfil
Re: [Ayuda] Sistema en VB.Net
« Respuesta #9 en: 12 Julio 2010, 00:34 am »

Bueno, ya lo logre y te explico... las cosas no eran "tan faciles" en realidad si pero ya vi el camino adecuado.. es asi:

En VB.net
- Descargar MySQL Connector .Net
- Agregar una referencia a MySQL.Data.dll
- Luego hacer un import
Código
  1.  Imports MySql.Data.MySqlClient
- Y por ultimo, en la cadena de conexion, en vez de usar el nombre del server,
  colocar la IP
Código
  1.  Public con As New MySqlConnection "server=LA_IP_DEL_SERVER;uid=username;pwd=password;database=tuDB")

Todo esto permite conectarte a una DB remota (como en mi caso: una DB MySQL en un servidor web, administrado por PhpMyAdmin) sin necesidad de estar instalando drivers en la pc donde se va a ejecutar la aplicacion ya que la dll siempre se adjunta a nuestro aplicativo ;)

Por ese lado todo aclarado, pero ahora sigo con otra duda:
como puedo hacer para que mi aplicacion sea lo mas "portable" posible?
por mi, me gustaria no tener que usar un framework asi como muchas aplicaciones
comerciales pero.. es esto posible?

me imagino que no ya que la aplicacion depende de .net pero habra alguna forma de capturar las dependecias de la aplicacion con el framework para que cuando se corra en otra pc no tenga necesidad de instalar el .net framework 3.5 por completo??  ::) espero sugerencias, saludos!
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines