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 

Problema de actualización automatica desde el servidor al cl

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Problema de actualización automatica desde el servidor al cl Responder citando

Necesito establecer la comunicación de 2 aplicaciones, estoy usando DDE, para esto cree 2 aplicaciones como sigue:

app1 - DDE Server
Elementos:
- 1 TForm - La forma principal
- 1 TEdit - dato a enviar
- 1 TDdeServerConv - Topico DDE (genera la conversación)
- 1 TDdeServerItem - Item que se liga al TEdit

app2 - DDE Client
Elementos:
- 1 TForm - La forma principal
- 1 TEdit - dato a recibir
- 1 TDdeClientConv - Topico DDE
- 1 TDdeClientItem - Item que se liga al TEdit
- 1 TButton - Boton para conectar
- 1 TButton - Boton para desconectar

ok, esto trabaja bien, siempre y cuando el cliente haga las solicitudes de los datos, lo que necesito es que cuando el dato del servidor se actualiza, este lo mande al cliente sin una solicitud especifica de el. Cuando pongo el TDdeClientConv en modo automatico y lleno sus propiedades DdeService y DdeTopic, y tambien pongo la propiedad Ddeitem del elemento TDdeClientItem todo funciona bien la primera vez que arranca la aplicación, pero si cierro el enlace y lo vuelvo abrir (se abre bien el enlace y puedorecibir mediante una solicitud explicita del cliente), ya no se actualiza autamaticamente el dato del cliente, ¿alguien sabe como resolver esto?

Gracias de antemano por la ayuda.

WinMan

Volver arriba
Mensaje    Asunto: Problema de actualización automatica desde el servidor al cl Responder citando

Aqui esta el codigo:

Server:

// metodo para evento OnChange del TEdit
void __fastcall TForm1::Edit1Change(TObject *Sender)
{
DdeServerItem1->Text = Edit1->Text;
}


Cliente:
//-------------------------------------------void __fastcall TForm2::DdeClientItem1Change(TObject *Sender)
{
Edit1->Text = DdeClientItem1->Text;
}

//-------------------------------------------
// DDESERVER.exe es el nombre de
// la aplicación
void __fastcall TForm2::Button1Click(TObject *Sender)
{
if(DdeClientConv1->SetLink("DDESERVER", "DdeServerConv1")){
DdeClientItem1->DdeItem = "DdeServerItem1";
}
}
//-------------------------------------------void __fastcall TForm2::Button2Click(TObject *Sender)
{
DdeClientConv1->CloseLink();
}
//-------------------------------------------

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.