Domingo 22 de Diciembre de 2024, 03:08
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
C/C++
»
C++ Builder
(Moderador:
Eternal Idol
) »
Re: Crear un dsn
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Re: Crear un dsn (Leído 2279 veces)
Pieza
Nuevo Miembro
Mensajes: 2
Re: Crear un dsn
«
en:
Domingo 11 de Mayo de 2003, 17:58 »
0
Hola a todos!
Estoy desarrollando un CD multimedia (con Director) para su posterior distribución. El problema me surge porque accede a una base de datos (por odbc) que va tambien en el CD, ¿cómo registro esa base de datos en el sistema del usuario?
¿Hay alguna manera de conectarse a la bd que no sea por odbc o por internet?
¿Sería posible hacerlo con un programa de c?
Gracias a todos
Tweet
xoom
Nuevo Miembro
Mensajes: 9
Re: Crear un dsn
«
Respuesta #1 en:
Martes 13 de Mayo de 2003, 14:22 »
0
Claro, desde C podrías acceder a la BDD usando ADO, que es bastante sencillo y no tienes que dar de alta la BDD en ningún sitio, sólo la abres indicando su ruta, que puede ser tanto absoluta (no te valdría para un CD) como relativa (referida al directorio actual del ejecutable, que es lo que necesitarías en tu caso).
Échale un vistazo al manejo del ADO, verás como es muy sencillo.
xoom ---
http://www.recursospc.tk
_Viktor
Miembro MUY activo
Mensajes: 271
Re: Crear un dsn
«
Respuesta #2 en:
Sábado 20 de Septiembre de 2003, 00:48 »
0
Código: Text
//---------------------------------------------------------------------------
#include <vcl.h>
#include <stdio.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
bool CreateODBCAlias(String sAlias, String sDB, String sDir, String sDescription)
{
typedef BOOL (__stdcall *pSQLConfigDataSource)(HWND, WORD, LPCSTR, LPCSTR);
pSQLConfigDataSource SQLConfigDataSource;
HINSTANCE hLib;
bool bRet = false;
hLib = LoadLibrary("odbccp32.dll");
if (hLib)
{
SQLConfigDataSource = (pSQLConfigDataSource) GetProcAddress(hLib, "SQLConfigDataSource");
if (SQLConfigDataSource)
{
char szParam[1024];
sprintf(szParam, "DSN=%s; Description=%s; DefaultDir=%s; DBQ=%s ",
sAlias.c_str(), sDescription.c_str(), sDir.c_str(), sDB.c_str());
bRet = SQLConfigDataSource(NULL, 1 /*ODBC_ADD_DSN*/,"Microsoft Access Driver (*.mdb)", szParam);
} FreeLibrary(hLib);
}
// Devuelve true si se crea o false en caso contrario
return bRet;
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
bool ret;
ret = CreateODBCAlias("MiAlias",
"bd.mdb",
"C:bd",
"Esto es una prueba");
// Devuelve true si se crea correctamente
ShowMessage(ret ? "Creado" : "Error");
}
//---------------------------------------------------------------------------
_Viktor _Yañez_
"Ser inteligente no es ser mas, solo equivocarse menos y no usar visual basic"
http]
carlos_lue
Miembro activo
Mensajes: 83
Re: Crear un dsn
«
Respuesta #3 en:
Miércoles 24 de Septiembre de 2003, 23:25 »
0
como complemento a mensage anterior,
si deseas que el programa funcione en donde se instale, no debes poner la ruta fìsica, debes poner ruta relativa.
CODIGO:
bool ret;
ret = CreateODBCAlias("MiAlias",
"bd.mdb",
ExtractFilePath(Application->ExeName),
"Esto es una prueba");
// Devuelve true si se crea correctamente
ShowMessage(ret ? "Creado" : "Error");
solo se sustituye :
"C:directorio", por la direccion en donde se encuentra el programa.
ExtractFilePath(Application->ExeName),
bueno un saludo a todos.
_Viktor
Miembro MUY activo
Mensajes: 271
Crear un dsn
«
Respuesta #4 en:
Sábado 18 de Octubre de 2003, 22:01 »
0
En realidad se tiene que poner la ruta del directorio donde se encuentra la BD.-
Saludos!
_Viktor _Yañez_
"Ser inteligente no es ser mas, solo equivocarse menos y no usar visual basic"
http]
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
C/C++
»
C++ Builder
(Moderador:
Eternal Idol
) »
Re: Crear un dsn