Domingo 15 de Diciembre de 2024, 18:30
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
) »
Aplicacion Para Control De Una Red Local
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Aplicacion Para Control De Una Red Local (Leído 2880 veces)
betitono1
Miembro MUY activo
Mensajes: 235
Aplicacion Para Control De Una Red Local
«
en:
Viernes 30 de Enero de 2004, 18:57 »
0
Hola que tal como podira hacer una aplicacion para la ejecucion de otras aplicaciones en diferentes maquinas de una red.
-Controlar su ejecucion.
-Enviar informacion a estas.
-Que estas aplicaciones envien informacion a una que los controle, es decir que se comuniquen entre si.
Saludos.
Tweet
QliX=D!
Miembro MUY activo
Mensajes: 214
Re: Aplicacion Para Control De Una Red Local
«
Respuesta #1 en:
Viernes 30 de Enero de 2004, 19:21 »
0
Hola!.
Bueno eso es sencillo haces un protocolo que se monte sobre TCP/IP para el manejo y administracion remota.
O usas RPC.
No es complicado tipo, la idea es mandar paquetes deun lado a otro con lo que necesitas.
Pasa uqe tu aplicacion tendria que ser muy parametrizable... asi que no se.. bueno eso es un idea... slds.
QliX=D! - From the top of Tsunami
_Viktor
Miembro MUY activo
Mensajes: 271
Re: Aplicacion Para Control De Una Red Local
«
Respuesta #2 en:
Viernes 30 de Enero de 2004, 21:17 »
0
Bueno, en el fondo lo que se trata de decir en le mensaje anterior es que utilices socket's para enviar las "ordenes" al equipo que tiene que realizar las tareas, aqui te dejo la url para un ejemplo de su uso:
http://www.visualcomponentlibrary.com/bcb/sockets/socket.htm
Saludos!
_Viktor _Yañez_
"Ser inteligente no es ser mas, solo equivocarse menos y no usar visual basic"
http]
betitono1
Miembro MUY activo
Mensajes: 235
Re: Aplicacion Para Control De Una Red Local
«
Respuesta #3 en:
Sábado 31 de Enero de 2004, 14:58 »
0
gracias por su respuesta pero tengo algunas preguntas, necesito una aplicacion principal que controle a las demas, se puede hacer?, deben estar ejecutandose alguna de las aplicaciones a ser controladas para que funcione la comunicaon o el programa principal puede hacer que se abra o cierre cuando quiera.
Saludos
_Viktor
Miembro MUY activo
Mensajes: 271
Re: Aplicacion Para Control De Una Red Local
«
Respuesta #4 en:
Sábado 31 de Enero de 2004, 18:42 »
0
Hola, vamos que si lo piensas no es tan dificil, claro que puedes hacerlo con socket's, te doy una idea:
Supongamos que quieres enviar la orden de actualizar unos datos a la app cliente, puedes hacerlo de la siguiente forma:
Código: Text
ServerSocket1->Socket->SendText("Actualizar");
Luego en el evento OnRead del Socket cliente usas lo siguiente
Código: Text
String sOrden = Socket->ReceiveText();
if(sOrden == "Actualizar")
{
//Realizar la actualizacion
}
else if(<Otra_Orden>)
{
//Etc. etc.
}
Y mas aun podrias hacer una clase que te discrimine la accion para cada mensaje, asi a la hora de crear una instancia de tu clase podrias hacer alcomo como esto:
Código: Text
TMiClase *Comando = new TMiClase(sOrden);
Comando->Ejecutar();
y por dentro de la clase discriminas la accion recibida y realizas al operacion asociada.
Espero te aclare algo, Saludos!
_Viktor _Yañez_
"Ser inteligente no es ser mas, solo equivocarse menos y no usar visual basic"
http]
seth_los
Nuevo Miembro
Mensajes: 9
Re: Aplicacion Para Control De Una Red Local
«
Respuesta #5 en:
Sábado 31 de Enero de 2004, 22:32 »
0
Hola _Victor esa ultima parte me interesa podrias hacer un ejemplo sencillo de como se podria implementar una clase con los textos recibidos me gustaria tener una idea mas clara...
Saludos
Seth
_Viktor
Miembro MUY activo
Mensajes: 271
Re: Aplicacion Para Control De Una Red Local
«
Respuesta #6 en:
Domingo 1 de Febrero de 2004, 03:31 »
0
Aqui te dejo un ejemplo que se me ocurre asi , imagina una aplicacion Servidor que envia la orden de ejecutar o eliminar un archivo a la aplicacion cliente, he declarado la siguiente clase:
MiClase.h
Código: Text
//---------------------------------------------------------------------------
#include <vcl.h>
#ifndef MiClaseH
#define MiClaseH
//OPERACIONES
#define EXEC 1
#define DEL 2
//---------------------------------------------------------------------------
#endif
class MiClase
{
private:
int Accion;
String Fichero;
public:
void Ejecutar(void);
MiClase(int nOrden, String sArchivo);
};
MiClase.cpp
Código: Text
//---------------------------------------------------------------------------
#pragma hdrstop
#include "MiClase.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
void MiClase::Ejecutar()
{
switch(this->Accion)
{
case EXEC:ShellExecute(0,"open",this->Fichero.c_str(),0,0,SW_SHOWDEFAULT);
break;
case DEL :DeleteFile(this->Fichero);
break;
}
}
MiClase::MiClase(int nOrden,String sArchivo)
{
this->Accion = nOrden;
this->Fichero = sArchivo;
}
y Luego para su implementacion en el Evento OnRead del ClientSocket seria algo como esto:
Código: Text
void __fastcall TForm1::ClientSocket1Read(TObject *Sender,
TCustomWinSocket *Socket)
{
String sMensaje = Socket->ReceiveText();
int nOrden = StrToInt(sMensaje.SubString(1,sMensaje.Pos(" ")-1));
String sFichero = sMensaje.SubString(sMensaje.Pos(" ")+1,sMensaje.Length());
MiClase *Accion = new MiClase(nOrden,sFichero);
Accion->Ejecutar();
}
Y finalmente en la aplicacion Servidor tendrias que enviar un mensaje como el que sigue:
Código: Text
ServerSocket1->Socket->SendText("1 algo.txt"); //El 1 es el EXE definido en MiClase
Y eso.. disculpa lo burdo del ejemplo pero por tiempo no puedo hacer nada mas, espero lo entiendas y te sirva.
Saludos!
_Viktor _Yañez_
"Ser inteligente no es ser mas, solo equivocarse menos y no usar visual basic"
http]
betitono1
Miembro MUY activo
Mensajes: 235
Re: Aplicacion Para Control De Una Red Local
«
Respuesta #7 en:
Viernes 13 de Febrero de 2004, 13:31 »
0
Gracias por el ejemplo no lo habia visto por eso volvi a preguntar, disculpa.
Saludos
betitono1
Miembro MUY activo
Mensajes: 235
Re: Aplicacion Para Control De Una Red Local
«
Respuesta #8 en:
Viernes 13 de Febrero de 2004, 13:34 »
0
Una ultima pregunta como elijo a que cliente enviarle mensajes
Saludos
_Viktor
Miembro MUY activo
Mensajes: 271
Re: Aplicacion Para Control De Una Red Local
«
Respuesta #9 en:
Jueves 19 de Febrero de 2004, 08:19 »
0
Hola, en este caso se envia al primer cliente en el arreglo de conecciones del serversocket:
Código: Text
ServerSocket1->Socket->Connections[0]->SendText("Lo que quieras");
Para enviar al que tu eligas podrias usar un ciclo recorriendo estas conecciones y preguntado si la propiedad
Código: Text
ServerSocket1->Socket->Connections[0]->RemoteAddress
Es igual a la ip que buscas por ejemplo. O simplemente almacenar en otro arreglo una lista de las ip's y que estas coincidan con el orden de conecciones del serversocket
Ojo: el indice 0 que use arriba es solo para el primero, el numero de conecciones esta dado por:
Código: Text
ServerSocket1->Socket->ActiveConnections
Saludos!
_Viktor _Yañez_
"Ser inteligente no es ser mas, solo equivocarse menos y no usar visual basic"
http]
betitono1
Miembro MUY activo
Mensajes: 235
Re: Aplicacion Para Control De Una Red Local
«
Respuesta #10 en:
Jueves 19 de Febrero de 2004, 16:24 »
0
Gracias por tu respuesta voy a intentarlo
Saludos
betitono1
Miembro MUY activo
Mensajes: 235
Re: Aplicacion Para Control De Una Red Local
«
Respuesta #11 en:
Lunes 23 de Febrero de 2004, 17:45 »
0
Hola que tal alguien me puede decir si esposible pasar parametros con sockets, o el contenido de una variable sea vual sea su tipo?
Saludos
QliX=D!
Miembro MUY activo
Mensajes: 214
Re: Aplicacion Para Control De Una Red Local
«
Respuesta #12 en:
Jueves 4 de Marzo de 2004, 14:27 »
0
Lo mejor que podes hacer es trabajar todo como cadenas... y convertir los datos que necesitas en los extremos.
Por que si no te vas a hacer un lio.
por ejemplo supongamos que tenes que tenes un comando que se llamam Alarma yq ue implementa varais alarmas y necesitas pasar como paramtro la alarma correspondiente entonces:
ServerSocket1->Socket->Connections[0]->SendText("ALARMA #int#1, #string#'Se Activo la Alarma Por falla'");
Y del otro lado luego lo recibes e indetificas que es parametricada por que contiene espacios el texto, luego cortas la cadena en los espacios y convertis el parametro en base a lo que esta entre # #, basicamente esa es una idea general de lo que podrias hacer.
slds.
QliX=D! - From the top of Tsunami
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
C/C++
»
C++ Builder
(Moderador:
Eternal Idol
) »
Aplicacion Para Control De Una Red Local