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 04-10-2006
Iskariote0087 Iskariote0087 is offline
Miembro
 
Registrado: ene 2006
Posts: 81
Poder: 19
Iskariote0087 Va por buen camino
Thumbs up Ejecutar programa a trves del PcAnyWhere

Hola un saludete para todos.
vereis tengo un programa desde el cual llamo al Symantec pcAnywhere pasandole una variable.Dependiendo de lo que contiene la variable me conecto con un Host o con otro.Es decir, desde mi ordenador me conecto a 120 equipos, he hecho un programa para no tener que estar entrando en el pcAnywhere buscando el Host al que quiero conectarme etc... de tal forma que lo que hago es hacer la llamada pasandole el parametro requerido (codigo de tienda) y se conecta.Bueno, despues del rollo ahi va, lo que necesito es que desde este programa una vez que ya me he conectado al Host, hacer una llamada a un programa que esta en ese Host. Seguro que es posible pero a mi se me escapa, quien me echa un cable?

Un saludo y gracias
Iskariote
Responder Con Cita
  #2  
Antiguo 04-10-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola IsKariote0087
Interesante concepto, tambien uso pcAnywhere y no se me habia ocurrido algo asi, suena interesante.
Si pones el codigo del programa por aqui, tal vez entre varios podamos hechar a andar esto, repido es interesante.
Comparteo.
Saludos
Responder Con Cita
  #3  
Antiguo 04-10-2006
Iskariote0087 Iskariote0087 is offline
Miembro
 
Registrado: ene 2006
Posts: 81
Poder: 19
Iskariote0087 Va por buen camino
De esta manera con poner en la caja de texto 'TxtCod.text' el codigo del Host y hacindo click sobre el boton se conecta directamente.Una cosa curiosa y que no he conseguido solucionar es que cuando se conecta te deja la conexion minimizada, es una chorrada porque con maximizarla ya esta pero no he encontrado la manera de que se ejecute maximizado.
Espero que te sirva la verdad es que si estas constantemente conectandote a diferentes equipos es una manera de ganar tiempo.
De todas formas si a alguien sabe como ejecutar un programa que este en el Host al que te has conectado desde el programa que esta en el servidor pues ya sabe......un saludo

Código Delphi [-]
procedure TForm1.BtPcAnywhereClick(Sender: TObject);
var
  sinHandle1: THandle;
  tienda:string;
  searchResult : TSearchRec;
  codigo:string;
  tiendaAejecutar:string;
begin

    
  if FindFirst('C:\Documents and Settings\All Users\Datos de programa\Symantec\pcAnywhere\*.CHF', faAnyFile, searchResult) = 0 then   // si es o ha encontrado algo
  begin
    repeat
      Codigo:=AnsiMidStr(searchResult.Name, 1, 5);
      tienda:=AnsiMidStr(searchResult.Name, 6, 35);
      tiendaAejecutar:= Codigo+  tienda;
      If txtCod.Text= codigo then
        shellexecuteA(sinHandle1,'open',
             pansichar('C:\Documents and Settings\All Users\Datos de programa\Symantec\pcAnywhere\'+ tiendaAejecutar) ,nil,nil,sW_normal);
    until FindNext(searchResult) <> 0;
  end;
  findclose(searchResult);
  Form1.Enabled:=false;
  Form1.Enabled:=true;
 
end;



Un saludete Perretes
Iskariote
Responder Con Cita
  #4  
Antiguo 04-10-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola denuevo
Me esta dando un error esto y no se porque:
Cita:
[Error] Unit1.pas(40): Undeclared identifier: 'AnsiMidStr'
Cita:
[Error] Unit1.pas(44): Undeclared identifier: 'shellexecuteA'
Me falta declarar estos, donde los declaras ? en el uses ?
Y como ?
Saludos
Responder Con Cita
  #5  
Antiguo 04-10-2006
Iskariote0087 Iskariote0087 is offline
Miembro
 
Registrado: ene 2006
Posts: 81
Poder: 19
Iskariote0087 Va por buen camino
tienes que declarar en
USES
StrUtils,Shellapi
creo que con esto te funcionará

Un saludo
Iskariote
Responder Con Cita
  #6  
Antiguo 04-10-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Gracias IsKariote0087
Pero me sigue dando error, ahora solo este:
Cita:
[Error] Unit1.pas(40): Undeclared identifier: 'AnsiMidStr'
Supongo que el problema biene por el Ansi, no se?
Saludos
Responder Con Cita
  #7  
Antiguo 04-10-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Este es una copia del tuyo tal vez me indicas que falta en el uses:
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StrUtils, Shellapi, StdCtrls;

type
  TForm1 = class(TForm)
    TxtCod: TEdit;
    BtPcAnywhere: TButton;
    procedure BtPcAnywhereClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.BtPcAnywhereClick(Sender: TObject);
var
  sinHandle1: THandle;
  tienda:string;
  searchResult : TSearchRec;
  codigo:string;
  tiendaAejecutar:string;
begin
  if FindFirst('C:\Documents and Settings\All Users\Datos de programa\Symantec\pcAnywhere\*.CHF', faAnyFile, searchResult) = 0 then   // si es o ha encontrado algo
  begin
    repeat
      Codigo:=AnsiMidStr(searchResult.Name, 1, 5);
      tienda:=AnsiMidStr(searchResult.Name, 6, 35);
      tiendaAejecutar:= Codigo+  tienda;
      If txtCod.Text= codigo then
        shellexecuteA(sinHandle1,'open',
             pansichar('C:\Documents and Settings\All Users\Datos de programa\Symantec\pcAnywhere\'+ tiendaAejecutar) ,nil,nil,sW_normal);
    until FindNext(searchResult) <> 0;
  end;
  findclose(searchResult);
  Form1.Enabled:=false;
  Form1.Enabled:=true;
end;

end.

Este es el error:
Cita:
[Fatal Error] Unit1.pas(7): File not found: 'AnsiUtils.dcu'
Saludos
Responder Con Cita
  #8  
Antiguo 04-10-2006
Iskariote0087 Iskariote0087 is offline
Miembro
 
Registrado: ene 2006
Posts: 81
Poder: 19
Iskariote0087 Va por buen camino
strutils, con esta libreria el Ansi tiene que funcionar, acabo de hacer la prueba.La quito me da error la pongo ya no me da error.

un saludo
Iskariote
Responder Con Cita
  #9  
Antiguo 04-10-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Sera el delphi 6 el problema, No me funciona ?
Lo quite o lo ponga es lo mismo, vi en la lib del delphi y si esta.
Que sera ?
Saludos
Responder Con Cita
  #10  
Antiguo 04-10-2006
Iskariote0087 Iskariote0087 is offline
Miembro
 
Registrado: ene 2006
Posts: 81
Poder: 19
Iskariote0087 Va por buen camino
Yo creo que el problema es que no tienes el componente que te permita trabajar con esa libreria.
Por Component\InstallComponet y añadirlo.Esto que te estoy diciendo te lo digo sin tenerlo muy claro, yo taambien soy un principiante y normalmente me ayudo mucho del foro para acabar mis programillas.
En cualquier caso si ves que no funciona quita el AnsiMidStr.Y prueba a meter en la variable codigo y tienda el codigo y el nombre a pelo a ver si te funciona.Luego ya pensaremos como hacer que funcione el Ansi...

Un saludete
Iskariote
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
Ejecutar programa local... seken Conexión con bases de datos 5 05-08-2005 13:16:30
Ejecutar un programa al conectar un USB tramjauer Varios 2 06-04-2005 23:03:00
ejecutar otro programa php srangel PHP 3 01-04-2005 17:11:27
Ejecutar un programa externo desde un programa de Delphi Roger_Fernandez Varios 3 02-09-2004 18:05:36
Ejecutar un programa DENTRO de otro programa seduerey Varios 8 12-11-2003 13:56:20


La franja horaria es GMT +2. Ahora son las 15:02:26.


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