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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2008, 12:45   #1
DeeNamid
 
Регистрация: 24.07.2008
Сообщений: 4
По умолчанию Есть проблема с потоками

Делаю один поток в котором будет пинговаться узел. Происходит ошибка при создании объекта Ping2, в чем ошибка?


Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls, OverbyteIcsWndControl, OverbyteIcsPing;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Label1: TLabel;
    Button1: TButton;
    Edit2: TEdit;
    Label2: TLabel;
    RichEdit1: TRichEdit;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation
uses unit2;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 TPingThread.Create(true,'74.55.2.116');
end;

end.
--------------------------------------------------
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, OverbyteIcsWndControl, OverbyteIcsPing, StdCtrls, ComCtrls,Unit1;

type
  TPingThread = class(TThread)
    HostAddress:string;
    Ping2:Tping;
  private
    { Private declarations }
  protected
    procedure Execute; override;
  public
    constructor Create(CreateSuspended: Boolean;Host:string);
  end;

implementation


constructor TPingThread.Create(CreateSuspended: Boolean; Host:string);
begin
HostAddress:=Host;
inherited Create(false)
end;

procedure TPingThread.Execute;
var i,j:integer;
begin
   Ping2.Create(nil); //вот здесь
end;

end.
Заключачаем код в теги CODE

Последний раз редактировалось rpy3uH; 01.11.2008 в 17:08.
DeeNamid вне форума Ответить с цитированием
Старый 01.11.2008, 13:22   #2
EdNovice
Пользователь
 
Регистрация: 13.04.2007
Сообщений: 65
По умолчанию

Не должно ли быть так:
procedure TPingThread.Execute;
begin
Ping2 := TPing.Create(nil);
end;
EdNovice вне форума Ответить с цитированием
Старый 01.11.2008, 14:05   #3
DeeNamid
 
Регистрация: 24.07.2008
Сообщений: 4
По умолчанию

Цитата:
Сообщение от EdNovice Посмотреть сообщение
Не должно ли быть так:
procedure TPingThread.Execute;
begin
Ping2 := TPing.Create(nil);
end;
Вообще-то да, так и было, что-то я не то стер видимо . Вообщем, оно так и есть и выдает ошибку.
DeeNamid вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работаю с текстовым файлом есть небольшая проблема Parcenson Общие вопросы Delphi 2 13.08.2008 06:46
Resin - есть проблема GonzA Общие вопросы по Java, Java SE, Kotlin 0 11.08.2008 20:02
Проблема с потоками DeeNamid Общие вопросы Delphi 2 04.08.2008 17:36
C++, работа с потоками mat90x Помощь студентам 20 15.05.2008 22:20
Проблема с потоками vitalik007 Общие вопросы Delphi 1 11.03.2008 22:35