Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   porq mi aplicacion no se ejecuta en otra pc (https://www.clubdelphi.com/foros/showthread.php?t=54787)

kurono 31-03-2008 04:03:28

porq mi aplicacion no se ejecuta en otra pc
 
hola amigos del foro tengo un problema acabo de hacer una especie de chat todo funciona bien pero el problema surge cuando lo ejecuto en otra pc me da error y no se ejecuta los componente que uso son tcpclient y tcpserver los cuales son componente nativo de delphi 7 el error que me tira es el siguiente
Código Delphi [-]
" error en la aplicacion porque no se encontro el archivo qtintf70.dll"
y a qui les dejo el codigo que utilizo


Código Delphi [-]
 
unit Chatmain;
interface
uses
  Classes, QControls, QStdCtrls, QExtCtrls, QButtons, QForms, Sockets;

type
  TForm1 = class(TForm)
    memRecv: TMemo;
    Panel1: TPanel;
    memSend: TMemo;
    Panel2: TPanel;
    btnSend: TButton;
    Panel3: TPanel;
    Label1: TLabel;
    edtRemoteHost: TEdit;
    Label2: TLabel;
    edtRemotePort: TEdit;
    Label3: TLabel;
    edtLocalPort: TEdit;
    btnActivateServer: TButton;
    TcpClient1: TTcpClient;
    TcpServer1: TTcpServer;
    procedure btnSendClick(Sender: TObject);
    procedure TcpServer1Accept(sender: TObject;
      ClientSocket: TCustomIpClient);
    procedure btnActivateServerClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
  // you must create your own thread to synch
  // writing to a gui component
  TClientDataThread = class(TThread)
  private
  public
    ListBuffer :TStringList;
    TargetList :TStrings;
    procedure synchAddDataToControl;
    constructor Create(CreateSuspended: Boolean);
    procedure Execute; override;
    procedure Terminate;
  end;
var
  Form1: TForm1;
  //DataThread: TClientDataThread;
implementation
{$R *.xfm}
//------------- TClientDataThread impl -----------------------------------------
constructor TClientDataThread.Create(CreateSuspended: Boolean);
begin
  inherited Create(CreateSuspended);
  FreeOnTerminate := true;
  ListBuffer := TStringList.Create;
end;
procedure TClientDataThread.Terminate;
begin
  ListBuffer.Free;
  inherited;
end;
procedure TClientDataThread.Execute;
begin
  Synchronize(synchAddDataToControl);
end;
procedure TClientDataThread.synchAddDataToControl;
begin
 TargetList.AddStrings(ListBuffer);
end;
//------------- end TClientDataThread impl -------------------------------------

procedure TForm1.btnActivateServerClick(Sender: TObject);
begin
  TcpServer1.LocalPort := edtLocalPort.Text;
  TcpServer1.Active := True;
end;         
procedure TForm1.btnSendClick(Sender: TObject);
var
  I: Integer;
begin
  TcpClient1.RemoteHost := edtRemoteHost.Text;
  TcpClient1.RemotePort := edtRemotePort.Text;
  try
    if TcpClient1.Connect then
      for I := 0 to memSend.Lines.Count - 1 do
      TcpClient1.Sendln(memSend.Lines[i]);
  finally
    TcpClient1.Disconnect;
  end;
end;
procedure TForm1.TcpServer1Accept(sender: TObject;
  ClientSocket: TCustomIpClient);
var
  s: string;
  DataThread: TClientDataThread;
begin
  // create thread
  DataThread:= TClientDataThread.Create(true);
  // set the TagetList to the gui list that you
  // with to synch with.
  DataThread.TargetList := memRecv.lines;
  // Load the Threads ListBuffer
  DataThread.ListBuffer.Add('*** Connecion Aceptada ***');
  DataThread.ListBuffer.Add('Host Remoto: ' + ClientSocket.LookupHostName(ClientSocket.RemoteHost) +
   ' (' + ClientSocket.RemoteHost + ')');
  DataThread.ListBuffer.Add('===== Message =====');
  s := ClientSocket.Receiveln;
  while s <> '' do
  begin
    DataThread.ListBuffer.Add(s);
    s := ClientSocket.Receiveln;
  end;
  DataThread.ListBuffer.Add('=====Fin del Mensaje=====');
  // Call Resume which will execute and synch the
  // ListBuffer with the TargetList
  DataThread.Resume;
end;
end.

dec 31-03-2008 10:53:52

Hola,

Parece que en tu aplicación haces uso de "Quick Report", y, cuando no, desde luego haces referencia a algunos de sus componentes:

Cita:

Código Delphi [-]
uses
  Classes, QControls, QStdCtrls, QExtCtrls, QButtons, QForms, Sockets;

Lo que debes hacer es quitar esas unidades de tu aplicación, si es que no vas a usarlas, o bien redistribuir junto a tu aplicación los archivos que necesiten dichos componentes, entre otros, la "DLL" que parece faltar en el sistema en que tu aplicación "falla".

kurono 31-03-2008 21:38:57

sabes estaba buscando el archivo que el error me tira q falta pero no lo encuentro o al menos el buscardor de windows no lo encuentra donde podria estar y como saber cuales son los archivo necesario para la aplicacion


La franja horaria es GMT +2. Ahora son las 00:23:58.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi