AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Clientsocket NonVcl create
Thema durchsuchen
Ansicht
Themen-Optionen

Clientsocket NonVcl create

Ein Thema von gandime · begonnen am 22. Sep 2008 · letzter Beitrag vom 27. Sep 2008
Antwort Antwort
Seite 1 von 2  1 2      
gandime
(Gast)

n/a Beiträge
 
#1

Clientsocket NonVcl create

  Alt 22. Sep 2008, 22:38
Hi,
ich möchte mit NonVcl einen CLientsocket auf machen aber es will nicht so recht...
Code:
Delphi-Quellcode:
type
TCsThread = class
    constructor Create;
    destructor destroy; override;
    procedure DoOnError(Sender: TObject; Socket: TCustomWinSocket;
      ErrorEvent: TErrorEvent; var ErrorCode: Integer);
    procedure DoOnConnect(Sender: TObject;
      Socket: TCustomWinSocket);
    procedure DoOnDisconnect(Sender: TObject;
      Socket: TCustomWinSocket);
    procedure DoOnRead(Sender: TObject;
      Socket: TCustomWinSocket);
    private
    Cs: Tclientsocket;
  end;

var
  Socket:TCsThread;

destructor TCsThread.Destroy;
begin
  cs.free;
end;

constructor TCsThread.Create;
begin
  inherited Create;
  Cs:=TClientSocket.Create(nil);//Fehler
  cs.OnRead:=DoOnRead;
  cs.OnDisconnect:=DoOnDisconnect;
  cs.OnConnect:=DoOnConnect;
  cs.OnError:=DoOnError;
end;

...blabla...

begin
  socket.Create;

end;
Fehler:
Zitat:
Erste Gelegenheit für Exception bei $7C812AEB. Exception-Klasse EAccessViolation mit Meldung 'Zugriffsverletzung bei Adresse 004792F0 in Modul 'NonVCL.exe'. Schreiben von Adresse 00000004'. Prozess NonVCL.exe (2860)
was mache ich falsch?


mfg

gandime
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer
Online

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Clientsocket NonVcl create

  Alt 22. Sep 2008, 22:42
Richtig machen wäre gut:

socket := TCsThread.Create;
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
gandime
(Gast)

n/a Beiträge
 
#3

Re: Clientsocket NonVcl create

  Alt 22. Sep 2008, 23:44
ohhha sowas übersehe ich wieder... thx
  Mit Zitat antworten Zitat
Benutzerbild von jokerfacehro
jokerfacehro

Registriert seit: 13. Feb 2007
306 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Clientsocket NonVcl create

  Alt 24. Sep 2008, 22:07
hab auch grad ne klasse nach dem muster erstellt und selbst mit socket:=TCsThread.Create; bekomme ich den gleichen fehler
"Never touch a running system administrator !"
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Clientsocket NonVcl create

  Alt 24. Sep 2008, 22:09
Das ist aber mehr als unwahrscheinlich das du eine Zugriffsverletzung mit exakt den gleichen Adressen hast?! Bist du dir sicher das es exakt der gleiche Fehler ist?
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
gandime
(Gast)

n/a Beiträge
 
#6

Re: Clientsocket NonVcl create

  Alt 24. Sep 2008, 22:50
hmm bei mir funzt es aber super
  Mit Zitat antworten Zitat
Benutzerbild von jokerfacehro
jokerfacehro

Registriert seit: 13. Feb 2007
306 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Clientsocket NonVcl create

  Alt 27. Sep 2008, 17:07
sorry hab mich etwas undeutlich ausgedrückt, ich meinte das schreiben der adresse 00000004.
wenn ich socket:=TcsThread.Create; mache :/

werd ma guggn worans liegt
"Never touch a running system administrator !"
  Mit Zitat antworten Zitat
Benutzerbild von jokerfacehro
jokerfacehro

Registriert seit: 13. Feb 2007
306 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Clientsocket NonVcl create

  Alt 27. Sep 2008, 17:32
neues problem: ich bekomme eine speicherverletzung



Delphi-Quellcode:
unit Unit1;

interface

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

type
  TField = class
  constructor Create(Owner: TComponent);
  destructor destroy;
  private
  Fields: array[0..7] of array[0..7] of TShape;
  end;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Shape1: TShape;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    Field:TField;
    { Public declarations }
  end;



var
  Form1: TForm1;


implementation

{$R *.dfm}

destructor TField.destroy;
begin
Fields[0,0].Free;
end;

constructor TField.Create(Owner: TComponent);
var i,k:integer;
begin
inherited Create;
Fields[0,0]:=TShape.Create(Owner); //test --->Fehler
{for i:=0 to 7 do
for k:=0 to 7 do begin
  Fields[i,k]:=TShape.Create(Form1);
  with Fields[i,k] do begin
  Parent:=Form1;
  Width:=20;
  Height:=20;
  Left:=i*20;
  Top:=k*20;
  Brush.Color:=clGray;
  end;
end; }

end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Field.Create(self);
end;

end.
"Never touch a running system administrator !"
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Clientsocket NonVcl create

  Alt 27. Sep 2008, 18:03
Das ergibt einen neuen Thread. Bitte nicht hier kreuz und quer fragen!
Un dann schaue dir das bitte nochmal genau an! In dem Code stimmt ja gar nix.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Clientsocket NonVcl create

  Alt 27. Sep 2008, 19:09
Field.Create(self); ->
Field := TField.Create(self);
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz