 |
Club Builder Foro de C++Builder en español
|
| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
ailis Ens


Registrado: 12 Nov 2002Mensajes: 48
|
Publicado: Vie 12 Dic, 2003 1:44 pm Asunto: Matrices de control del VB en el Builder |
|
|
Hola a tod@s, yo estoy haciendo una especie de circuito cerrado de television con red local y webcams. Bien ,pues la conexion la hago con TCP/IP y usando ClientSocket y ServerSocket. Al Cliente le llegaran mediante SendBuf las imagenes del Servidor. El porblema es que necesito que el Cliente reciba imagenes de varios Servidores a la vez.
Mi primera solucion fue pensar en duplicar codigo, ya que si uso un nuevo ClientSocket por cada conexion las interrupciones que generan cada uno cuando le llege un paquete seran disitntas.... claro que si quiero tener 10 camaras tendria que duplicar 10 veces el codigo y no creo qe sea la forma mas eficiente.
Un compañero me ha dicho que en el VisualBasic el puede crear un matriz de control, si declara dos variables con el imsmo nombre el programa le dice que si quiere crear un matrizi de coontrol y podra usar los mismo subprogramas e interrupciones, controlando de quien le llega la informacion a traves del índice. ¿Alguien sabe como se hace esto en el Builder? ¿Hay alguna otra fomra de hacerlo pero que de el mismo resultado???
Es muy importante, espero de verdad que alguien pueda ayudarme.
Gracias y un Saludo,
Ailis. |
|
| Volver arriba |
|
 |
Cesar C. Salazar Gonzalez Master


Registrado: 01 Oct 2002Mensajes: 2155Ubicación: San Cristóbal de Las Casas, Chiapas
|
Publicado: Vie 12 Dic, 2003 9:03 pm Asunto: |
|
|
Mira, visual Basic, lo crea, para generar un Array de Componentes.. , pero en Builder, puedes utilizar un TVarian, o en su caso un hilos, para poder generar, estas opciones.. pero te recomiendo, lo siguiente, primero has funcionar una camara y despues intenta con 2, para poder determinar si es mejor realizar una clase, y de clarar cuantas camaras necesites.
Ejemplos
Class Camara{
{...}
}camra1,camar2, etc;
digo puede ser otra solucion.. _________________
 |
|
| Volver arriba |
|
 |
ailis Ens


Registrado: 12 Nov 2002Mensajes: 48
|
Publicado: Vie 12 Dic, 2003 9:48 pm Asunto: |
|
|
Hola Cesar, a mi la conexion a una camara me funciona bien, pero con lo de cloentsocket como comente...
Yo no conozco el TVarian, lo buscare en la ayuda,.... y que deberia poner en la clase???.
Gracias de verdad, Ailis. |
|
| Volver arriba |
|
 |
_Viktor Master


Registrado: 20 Jul 2003Mensajes: 463Ubicación: Santiago, Los Angeles - Chile
|
Publicado: Sab 13 Dic, 2003 1:37 am Asunto: |
|
|
Hola Ailis si te entendi bien no tienes que hacer tanto rollo para eso, podrias usar algo como esto:
Unit1.h
| Código: |
public: // User declarations
//Arreglo de 10 clientes sockets
TClientSocket *Clientes[10];
//Evento OnConnect, el mismo para los 10
void __fastcall ClienteConnect(TObject *Sender,TCustomWinSocket *Socket);
|
Unit1.cpp
| Código: |
_fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
for(int i=0;i<10;i++)
{
//reservas memoria para c/u
Clientes[i] = new TClientSocket(this);
//Indicas que en el OnConnect ejecuten ClienteConnect
Clientes[i]->OnConnect = ClienteConnect;
//Asignas datos para la coneccion
Clientes[i]->Port = 15000;
Clientes[i]->Address = "127.0.0.1";
//Con el Tag identificaremos cada Socket en los eventos.
Clientes[i]->Tag = i;//con este identificamos al socket
Clientes[i]->Open();
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ClienteConnect(TObject *Sender,
TCustomWinSocket *Socket)
{
//Para identificar cual de los 10 clientes se conecto
int nCual = ((TClientSocket*)Sender)->Tag;
ListBox1->Items->Add("Socket " + IntToStr(nCual)+" Conectado");
}
//---------------------------------------------------------------------------
|
Espero te sirva.. ya que en teoria esto es un arreglo de controles....
Te doy solo el ejemplo del OnConnect pq no tengo mucho tiempo libre, en todo caso funciona perfecto ya que probe enviando texto de los distintos clientes...
Saludos!!! _________________ "Ser inteligente no es ser mas, solo equivocarse menos y no usar Visual Basic"
Atte.
Victor Yañez
Apoyen el Proyecto OpenSource del Club Builder. Ya tenemos componentes Listos!!! |
|
| Volver arriba |
|
 |
Cesar C. Salazar Gonzalez Master


Registrado: 01 Oct 2002Mensajes: 2155Ubicación: San Cristóbal de Las Casas, Chiapas
|
Publicado: Sab 13 Dic, 2003 8:12 am Asunto: |
|
|
Es a lo que me referia, una arreglo pero de Objetos, con la clase
Class camara{
{...}
}camaras[10];
camara[0]->grabar;
camara[1]->grabar;
etc... _________________
 |
|
| Volver arriba |
|
 |
|
|
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
|
© 2002–2026 Club Builder · Funciona con phpBB.
|