Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-05-2007
Edgtho Edgtho is offline
Miembro
 
Registrado: abr 2006
Posts: 47
Poder: 0
Edgtho Va por buen camino
Problema ventana CPU

Buenas,

Ya hace tiempo desde mi ultima visita, jejeje. Lamento no poder estar mas al dia. Os comento un problemilla que tengo desde hace unos dias y que me esta matando, a ver si podeis ayudarme.

Accedo a una funcion ubicada en una DLL, concretamente

function SQLConfigDataSource; external 'odbccp32.dll' name 'SQLConfigDataSource';


El problema consiste en que en el momento en que ejecuto una llamada a esa funcion me salta la ventana de DEBUG de CPU, sin motivo ni error ninguno y ya no me deja hacer F8 ni F7, ni revisar ni nada. Directamente me toca lanzar la aplicacion con F9 y eliminar toda posibilidad de supervision.

Alguien me puede echar un cable para quitar esta molesta ventanita? No termino de entener porque salta ya que no le he activado ninguna opcion ni nada.
__________________
Dios es real a menos que sea declarado entero
Responder Con Cita
  #2  
Antiguo 18-05-2007
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
No sé si tendrá algo que ver pero, ¿no deberías añadir un STDCALL?
Código Delphi [-]
function SQLConfigDataSource; stdcall; external 'odbccp32.dll' name 'SQLConfigDataSource';
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #3  
Antiguo 18-05-2007
Edgtho Edgtho is offline
Miembro
 
Registrado: abr 2006
Posts: 47
Poder: 0
Edgtho Va por buen camino
Gracias por la respuesta
Jejeje, en parte tienes razon, el problema es que no te he puesto la UNIT entera. Ahora, se que no es problema del STDCALL ya que el mismo codigo en otro ordenador no salta la CPU, es algo de mi Delphi que se ha vuelto revoltoso.


Os pongo la unit entera
Código:
{
 Unit que imprementa la dll odbccp32.dll en donde estan las funciones
 del api de windows para administrar alias odbc
}


unit AdminMyODBC;

interface

uses
    Windows;

// constantes utilizadas en la dll odbccp32.dll

Const
   ODBC_ADD_DSN=1;
   ODBC_CONFIG_DSN=2;
   ODBC_REMOVE_DSN=3;
   ODBC_ADD_SYS_DSN=4;
   ODBC_CONFIG_SYS_DSN=5;
   ODBC_REMOVE_SYS_DSN=6;
   ODBC_REMOVE_DEFAULT_DSN=7;

// funciones declaradas en la dll odbccp32.dll

function SQLConfigDataSource(HwndParent:HWND;FRequest:WORD;Driver:PChar;Attributes:Pchar):boolean;Stdcall;

// crear ODBC Mysql

function CreaMyODBC(const Nombre, Descripcion, servidor, bd, usuario, password: string): Boolean;

// borrar ODBC Mysql

function BorraMyODBC(const Nombre, Descripcion, servidor, bd, usuario, password: string): Boolean;

implementation

function SQLConfigDataSource; external 'odbccp32.dll' name 'SQLConfigDataSource';

function CreaMyODBC(const Nombre, Descripcion, servidor, bd, usuario, password: string): Boolean;
begin


   Result := SQLConfigDataSource(
                                 0,
                                 ODBC_ADD_DSN,
                                 'MySQL ODBC 3.51 Driver',
                                 PChar(
                                        'DSN=' + nombre + #0 +
                                        'Description=' + Descripcion + #0 +
                                        'Server=' + servidor + #0 +
                                        'Database=' + bd + #0 +
                                        'User=' + usuario + #0 +
                                        'Password=' + password + #0
                                       )
                                 );

End;

function BorraMyODBC(const Nombre, Descripcion, servidor, bd, usuario, password: string): Boolean;
begin

   Result := SQLConfigDataSource(
                                 0,
                                 ODBC_REMOVE_DSN,
                                 'MySQL ODBC 3.51 Driver',
                                 PChar(
                                        'DSN=' + nombre + #0 +
                                        'Description=' + Descripcion + #0 +
                                        'Server=' + servidor + #0 +
                                        'Database=' + bd + #0 +
                                        'User=' + usuario + #0 +
                                        'Password=' + password + #0
                                       )
                                 );

end;
__________________
Dios es real a menos que sea declarado entero
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Delphi 7.0 y MySql, Enviar informacion de ventana a ventana gozi Conexión con bases de datos 2 03-04-2006 05:28:41
problema con ventana Modal ingel Varios 2 19-12-2005 23:52:54
Problema al cerrar ventana de impresion salvanano Impresión 4 04-06-2005 20:21:20
Problema con pantalla de password (ventana modal) Durbed Varios 7 04-05-2005 15:18:39
Problema al cerrar una ventana noModal. Perenquen OOP 2 04-11-2004 14:35:43


La franja horaria es GMT +2. Ahora son las 07:10:17.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi