Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.08.08;
Скачать: [xml.tar.bz2];

Вниз

Error Code 6   Найти похожие ветки 

 
c0pYc@t   (2002-07-26 12:40) [0]

Неверный дескриптер
Люди чё это вообще такое, и с чем это едят ))


 
Виктор Щербаков   (2002-07-26 12:42) [1]

Сообщение об ошибке.
Есть это не нужно, нужно делать выводы.
Приводи проблемный код.


 
c0pYc@t   (2002-07-26 12:45) [2]

Вот код сначало все ок, ни чего не менял и глючит

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ScktComp,Unit2, StdCtrls;

type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Button1: TButton;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Button2: TButton;
Button3: TButton;
procedure ServerSocket1Accept(Sender: TObject;
Socket: TCustomWinSocket);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
index: LongInt = 0;
count: LongInt = 0;
implementation

{$R *.dfm}

procedure TForm1.ServerSocket1Accept(Sender: TObject;
Socket: TCustomWinSocket);
begin
//socket.
end;

procedure TForm1.Button1Click(Sender: TObject);
var k:boolean;
begin
item.index := index;
item.A := StrToInt(Edit1.Text);
item.B := StrToFloat(Edit2.Text);
item.C := Edit3.Text;
SetLength(masthr,Length(masthr)+1);

//showmessage(InTToStr(Length(masthr)));

masthr[index] := TMyThr.Create(item);
index := index+1;
Edit1.Text := "";
Edit2.Text := "";
Edit3.Text := "";

end;

procedure TForm1.Button2Click(Sender: TObject);
begin

if count < index then
begin
//it.masitem[]
if masthr[count].Terminated then
begin
Edit4.Text := IntToStr(it.masitem[count].A);
Edit5.Text := FloatToStr(it.masitem[count].B);
Edit6.Text := it.masitem[count].C;
Edit7.Text := IntToStr(it.masitem[count].index);
end;
count := count + 1;
end
else showmessage("Усё Конец");

end;

procedure TForm1.FormActivate(Sender: TObject);
begin
InitUnit;
//masthr:= nil;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
count := 0;
end;

end.


unit Unit2;

interface

uses
Classes, Dialogs, SysUtils;

type
TMyParametr = record
index: LongInt;
A: integer;
B: real;
C: string;
end;

TMyThr = class(TThread)
private
{ Private declarations }
ThrParam: TMyParametr;
Thrindex: LongInt;
protected
procedure Execute; override;
public
constructor Create(thrparams:TMyParametr);
procedure DoWork;
property Terminated;
end;


TMyThrConnect = record
masitem: array of TMyParametr;
end;

var
it: TMyThrConnect;
masthr: array of TMyThr = nil;
item: TMyParametr;

procedure InitUnit;

implementation
procedure InitUnit;
begin
if Length(it.masitem) = 0 then
SetLength(it.masitem,1);
end;

constructor TMyThr.Create(thrparams:TMyParametr);
begin
inherited Create(false);
FreeOnTerminate:=true;
ThrParam:=thrparams;
resume;
end;

procedure TMyThr.DoWork;
begin
//sleep(thrparam.A+10000);
thrparam.A := thrparam.A + thrparam.A;
thrparam.B := thrparam.B + thrparam.B;
thrparam.C := thrparam.C + thrparam.C;
if thrparam.index+1>Length(it.masitem) then begin
SetLength(it.masitem, thrparam.index+1);
end;
it.masitem[thrparam.index] := thrparam;

end;
{ TMyThr }
procedure TMyThr.Execute;
begin
DoWork;
showmessage("Ну че конец");
// Terminate;
{ Place thread code here }

end;

end.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.08.08;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.006 c
14-24237
Olgerd
2002-07-12 11:40
2002.08.08
О видеокартах...


1-24048
Tatan
2002-07-25 18:18
2002.08.08
B-дерево


1-24126
cherepovets
2002-07-26 17:18
2002.08.08
Панель задач


1-24075
LexusR
2002-07-26 07:43
2002.08.08
COM-объект умирает раньше времени


3-23891
Explorer
2002-07-17 08:34
2002.08.08
Count, sum





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский