начел писать программу но куча ошибок было часть исправил щяс не знаю что делать застрял на IbAddConnect.Items.Add(Athread.Connection.Binding.PeerIP); procedure TForm1.ServerConnect(AThread: TIdPeerThread); begin IbAddConnect.Items.Add('vnimaniya, obnarujen connect:'); IbAddConnect.Items.Add(Athread.Connection.Binding.PeerIP); end; написанно [Error] unitserver.pas(63): Undeclared identifier: 'Binding' [Error] unitserver.pas(63): 'END' expected but ')' found [Error] unitserver.pas(68): Undeclared identifier: 'TClipboard' [Error] unitserver.pas(71): Missing operator or semicolon [Error] unitserver.pas(72): Missing operator or semicolon [Error] unitserver.pas(78): Record, object or class type required [Warning] unitserver.pas(83): Text after final 'END.' - ignored by compiler [Fatal Error] Project1.dpr(5): Could not compile used unit 'unitserver.pas' код программы unit unitserver; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, IdBaseComponent, IdComponent, IdTCPServer, IdCustomHTTPServer, IdHTTPServer, ComCtrls, Menus, StdCtrls; type TForm1 = class(TForm) IbAddConnect: TListBox; MMenu: TMainMenu; ClickMenu: TPopupMenu; Status: TStatusBar; Server: TIdHTTPServer; N1: TMenuItem; mStart: TMenuItem; mStop: TMenuItem; Close: TMenuItem; cmCopy: TMenuItem; cmClearAll: TMenuItem; procedure mStartClick(Sender: TObject); procedure mStopClick(Sender: TObject); procedure ServerConnect(AThread: TIdPeerThread); procedure cmCopyClick(Sender: TObject); procedure cmClearAllClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.mStartClick(Sender: TObject); begin Server.Active:=True; IbAddConnect.Items.Add('Server On'+FormatDateTime('hh.mm.ss',now)); Status.Panels[0].Text:='Monitor ne rabotaet'; mStart.Enabled:=True; mStop.Enabled:=False; end; procedure TForm1.mStopClick(Sender: TObject); begin Server.Active:=False; IbAddConnect.Items.Add('Server Ostanovlen'+FormatDateTime('hh.mm.ss',now)); Status.Panels[0].Text:='Monitor ne rabotaet'; mStart.Enabled:=True; mStop.Enabled:=False; end; procedure TForm1.ServerConnect(AThread: TIdPeerThread); begin IbAddConnect.Items.Add('vnimaniya, obnarujen connect:'); IbAddConnect.Items.Add(Athread.Connection.Binding.PeerIP); end; procedure TForm1.cmCopyClick(Sender: TObject); var Bo: TClipboard; begin {kopiryem v byfer obmena} Bo:=TClipboard.Create; Bo.SetTextBuf(pchar(IbAddConnect.Items.Strings[IbAddConnect.ItemIndex])); end; procedure TForm1.cmClearAllClick(Sender: TObject); begin IbAddConnect.ItemHeight.Clear; end; end. end; end.
TForm1 = class(TForm) - нет точки с запятой, как в следующих строчках IbAddConnect.Items.Add(Athread.Connection.Binding. PeerIP); - лишний пробел перед перайпи end. - этой энд с точкой быть не должно! end; end. Как вариант, если глюки останутся - переставь делфи
[Error] unitserver.pas(71): Missing operator or semicolon - ИЩИ пропущенн знак ";" [Warning] unitserver.pas(83): Text after final 'END.' - ignored by compiler - Все что после "заключительного" end'a игнорируется [Error] unitserver.pas(63): Undeclared identifier: 'Binding' - переменная 'Binding' не описан... [Error] unitserver.pas(68): Undeclared identifier: 'TClipboard' - анологично предыдущей ошибке... TClipboard не описанн... В общем я сейчас попробую ВСЕ профиксить
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, IdBaseComponent, StdCtrls, Menus, IdComponent, IdTCPServer, IdCustomHTTPServer, IdHTTPServer, ComCtrls, Clipbrd; type TForm1 = class(TForm) IbAddConnect: TListBox; Status: TStatusBar; Server: TIdHTTPServer; PopupMenu1: TPopupMenu; MMenu: TMainMenu; N1: TMenuItem; mStart: TMenuItem; mStop: TMenuItem; Close: TMenuItem; cmCopy: TMenuItem; cmClearAll: TMenuItem; procedure mStartClick(Sender: TObject); procedure mStopClick(Sender: TObject); procedure ServerConnect(AThread: TIdPeerThread); procedure cmCopyClick(Sender: TObject); procedure cmClearAllClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.mStartClick(Sender: TObject); begin Server.Active:=True; IbAddConnect.Items.Add('Server On'+FormatDateTime('hh.mm.ss',now)); Status.Panels[0].Text:='Monitor ne rabotaet'; mStart.Enabled:=True; mStop.Enabled:=False; end; procedure TForm1.mStopClick(Sender: TObject); begin Server.Active:=False; IbAddConnect.Items.Add('Server Ostanovlen'+FormatDateTime('hh.mm.ss',now)); Status.Panels[0].Text:='Monitor ne rabotaet'; mStart.Enabled:=True; mStop.Enabled:=False; end; procedure TForm1.ServerConnect(AThread: TIdPeerThread); begin IbAddConnect.Items.Add('vnimaniya, obnarujen connect:'); //IbAddConnect.Items.Add(Athread.Connection.Binding.PeerIP);//Вот с этим не знаю... С Indy Вообще не работал... //ВindingS существует только в Server //Athread.Connection.Server.Bindings <-- end;; procedure TForm1.cmCopyClick(Sender: TObject); var Bo: TClipboard;//Требует подключения модуля Clipbrd begin Bo:=TClipboard.Create; Bo.SetTextBuf(pchar(IbAddConnect.Items.Strings[IbAddConnect.ItemIndex])); end; procedure TForm1.cmClearAllClick(Sender: TObject); begin //IbAddConnect.ItemHeight.Clear; //ПРОЩЕ!! =) IbAddConnect.Clear; end; end.
//IbAddConnect.Items.Add(Athread.Connection.Binding. PeerIP); //Вот с этим не знаю... С Indy Вообще не работал... //ВindingS существует только в Server //Athread.Connection.Server.Bindings <-- вот только с эти предется разбираться... А вообще спасибо не говорят + - вот это и есть спасибо