Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.01.2015, 15:10   #11
Ivan34ru
Новичок
Джуниор
 
Аватар для Ivan34ru
 
Регистрация: 27.01.2015
Сообщений: 7
По умолчанию

Стоит Indy 2010

Ошибки:

Код:
Checking project dependencies...
Compiling Project1.dproj (Debug configuration)
[DCC Error] Unit1.pas(59): E2003 Undeclared identifier: 'WriteLn'
[DCC Error] Unit1.pas(61): E2003 Undeclared identifier: 'ReadStream'
[DCC Error] Unit1.pas(26): E2065 Unsatisfied forward or external declaration: 'TForm1.IdTCPClient1Disconnected'
[DCC Fatal Error] Project1.dpr(5): F2063 Could not compile used unit 'Unit1.pas'
Failed
Elapsed time: 00:00:00.4
Код:
 IdTCPClient1.WriteLn('jpg');
 IdTCPClient1.ReadStream(st);
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, Menus, IdBaseComponent, IdComponent,
  IdTCPConnection, IdTCPClient;


type
  TForm1 = class(TForm)
    IdTCPClient1: TIdTCPClient;
    Image1: TImage;
    Timer1: TTimer;
    Edit1: TEdit;
    Edit2: TEdit;
    Button1: TButton;
    Button2: TButton;
    Edit3: TEdit;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure IdTCPClient1Disconnected(Sender: TObject);


  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
IdTCPClient1.Host:=edit1.Text; // ип адрес
IdTCPClient1.Connect;
timer1.Enabled:=true;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin

timer1.Interval:=StrToInt(edit3.Text);
end;


procedure TForm1.Timer1Timer(Sender: TObject);
var
  st:TMemoryStream;
begin
 IdTCPClient1.WriteLn('jpg');
 st:=TMemoryStream.Create;
 IdTCPClient1.ReadStream(st);
 st.Position:=0;
 image1.Picture.Bitmap.LoadFromStream(st);
 st.Clear;
 st.Free;
end;

     procedure TForm1.Button3Click(Sender: TObject);
begin
timer1.Enabled:=False;

end;


        procedure TForm1.IdTCPClient1Disconnected(Sender: TObject);
begin
timer1.Enabled:=false;
end;




end.

Последний раз редактировалось Stilet; 28.01.2015 в 15:59.
Ivan34ru вне форума Ответить с цитированием
Старый 28.01.2015, 16:03   #12
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Наконец-то! Уж заждались...
Цитата:
Undeclared identifier: 'WriteLn'
Версии инди не совпадают. 2010 это если не ошибаюсь 9-я версия.
У нее WriteLN засунут дальше в класс IOHandler, т.е:
Код:
IdTCPClient1.IOHandler.WriteLn('jpg');
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.01.2015, 21:51   #13
Ivan34ru
Новичок
Джуниор
 
Аватар для Ivan34ru
 
Регистрация: 27.01.2015
Сообщений: 7
По умолчанию

Спасибо! с клиентом разобрался.
Подскажите пожалуйста с сервером.
ошибка:
Код:

[DCC Error] Unit2.pas(34): E2003 Undeclared identifier: 'TIdTCPServerConnection'
[DCC Error] Unit2.pas(50): E2066 Missing operator or semicolon
[DCC Error] Unit2.pas(57): E2029 ';' expected but '.' found
[DCC Error] Unit2.pas(60): E2003 Undeclared identifier: 'AThread'
[DCC Error] Unit2.pas(60): E2066 Missing operator or semicolon
[DCC Error] Unit2.pas(63): E2029 ')' expected but identifier 'Connection' found
[DCC Error] Unit2.pas(66): E2029 '.' expected but ';' found
[DCC Error] Unit2.pas(68): E2004 Identifier redeclared: 'TForm1'
[DCC Error] Unit2.pas(14): E2065 Unsatisfied forward or external declaration: 'TForm2.IdTCPServer1Execute'
код:
Код:
procedure jpg (connection: TIdTCPServerConnection);
var
 steam:TMemoryStream;
 desktopconvas : Tcanvas;
 Bitmap: TBitmap;
 begin
   desktopconvas:=TCanvas.Create;
   desktopconvas.Handle:=GetDC(HWND_DESKTOP);
   Bitmap:=TBitmap.Create;
   Bitmap.Width:=Screen.Width;
   Bitmap.Height:=screen.height;
   Bitmap.Canvas.CopyRect(Bitmap.Canvas.ClipRect, desktopconvas, desktopconvas.ClipRect);
   if not DrawIcon(Bitmap.Canvas.Handle,Mouse.CursorPos.X, Mouse.CursorPos.Y, GetCursor) then
   begin
     steam:=TMemoryStream.Create;
     Bitmap.SaveToStream(steam);
     connection.WriteStream(steam, True, True);
     steam.Clear;
     steam.Free;
     Bitmap.free;
   end;
 end;

procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
var a:string;
begin
  a:=AThread.Connection.ReadLn;
  if a='jpg' then
  begin
    jpg(AThread.Connection);
  end;
Ivan34ru вне форума Ответить с цитированием
Старый 28.01.2015, 21:57   #14
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ищи в хелпе своей INDI класс TIdTCPServerConnection. Смотри в каком он модуле описан и прописывай его в uses.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 29.01.2015, 14:22   #15
Ivan34ru
Новичок
Джуниор
 
Аватар для Ivan34ru
 
Регистрация: 27.01.2015
Сообщений: 7
По умолчанию

в uses все прописано на delphi 2010 не работает этот код, всю голову сломал, помогите пожалйста!
Ivan34ru вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с Delphi 2010 - как в Delhpi 2010 установить компонент TCommPortDriver Chudyak Компоненты Delphi 0 08.04.2014 08:06
Через какой компанент реализовать интерфейс? c# ms visual studio 2010. dima1257 C# (си шарп) 4 28.12.2013 12:04
Нужно реализовать ввод любого нелинейного уравнения в программуVisual C++ 2010 Express SMC512 Помощь студентам 7 28.05.2013 12:25
Word 2010 и Delphi 2010 David023 Мультимедиа в Delphi 1 30.04.2011 15:51
GlScene и Embarcadero Rad Studio 2010 (Delphi 2010) Fiery Fox Мультимедиа в Delphi 4 19.11.2010 21:46