Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

RasEnumConnections ¿Que esta mal en este codigo ? (es poco)

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: RasEnumConnections ¿Que esta mal en este codigo ? (es poco) Responder citando

Buenas...
¿Alguien me puede decir porque falla mi llamada a RasEnumConnections ? Me devuelve un error 610 (q corresponde a ERROR_BUFFER_INVALID). Debe ser que no le paso bien la estructura RASCONN.
Gracias por adelantado.

Código:

//-----------
#include "ras.h"
#include "raserror.h"
//-----------
void Conexiones  (void)
{
  RASCONN con [255];
  DWORD tam, conexiones, res;

  con[0].dwSize = sizeof (RASCONN);
  tam = con[0].dwSize;
  conexiones = 0;
  res = RasEnumConnections (con, &tam, &conexiones);

  if (res == 0) {
    for (unsigned long i = 0; i < conexiones; i++) {
      mem->Lines->Add (con[i].szEntryName);
    }
  }
  else {
    mem->Lines->Add ("ERROR:" + AnsiString (res));
}
Volver arriba
Mensaje    Asunto: Ayuda: ¿Que esta mal en este codigo ? (es poco codigo) Responder citando

Hola Mario:

A mi me funciona bien en Windows 2000 tal como lo has puesto, aunque supongo que tal como esta si lo estas compilando en BCB5 por defecto lo hace para una versión superior del RAS.

Creo que añadiendo esto en vez de las cabeceras directamente como las tienes deberia funcionarte:

  #define OLDWINVER WINVER
  #undef WINVER
  #define WINVER 0x400
  #include <ras.h>
  #include <raserror.h>
  #undef WINVER
  #define WINVER OLDWINVER
  #undef OLDWINVER

Saludos.
_Leo

Volver arriba
Mensaje    Asunto: Ayuda: ¿Que esta mal en este codigo ? (es poco codigo) Responder citando

Muchisimas gracias Leo. Redefiniendo WINVER lo he solucionado (aunque no entiendo muy bien pq tenia q redefinirlo), ahora la funcion va perfectamente, pero al redefinir WINVER me da fallo al compilar en la funcion RasConnectionNotification que tenia puesta y funcionaba bien. ¿Alguna idea de como hacer q pueda usar las dos? Muchas gracias
Volver arriba
Mensaje    Asunto: Ayuda: ¿Que esta mal en este codigo ? (es poco codigo) Responder citando

¿ Que versión de C++Builder usas ?
Intenta poniendo 0x401 en vez del 0x400.

El motivo es porque hay algunos errores y con esto le decimos que use lo más básico del RAS que va bien. Recuerdo haberlos tenido usando BCB4 en Windows98, aunque ahora uso BCB5 + Update#1 (http://www.borland.com/devsupport/bcppbuilder/patches) en Windows 2000 y sin poner los defines funciona sin problemas.

Volver arriba
Mensaje    Asunto: Ayuda: ¿Que esta mal en este codigo ? (es poco codigo) Responder citando

Ya está resuelto !!!
Gracias otra vez.
Yo uso el BCB5 y poniendo 0x401 funciona todo bien.
Volver arriba
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.