Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi CustomHandleComponent // TCustomHandleComponent fehlen (?) (https://www.delphipraxis.net/34266-customhandlecomponent-tcustomhandlecomponent-fehlen.html)

Zerolith 20. Nov 2004 01:46


CustomHandleComponent // TCustomHandleComponent fehlen (?)
 
Hallo!

da mir leider bei meinem Beitrag: http://www.delphipraxis.net/internal...ct.php?t=39072 niemand wirklich helfen konnte. Habe ich mich auf die Suche nach einem ähnlichen konzept umgesehen. Bin nach einiger Zeit dann auf diesen

http://ip-web.hn.org/filez/somewizardrycode.zip Code gestoßen.

Zitat:

Wizardry Netzerk Engine
Delphi Programmierung
Die Wizardry Netzwerk Engine ist eine nie gänzlich vollendete Netzwerkengine für 3D Computerspiele auf Basis der Winsock Bibliothek. Obwohl sie nie fertig gestellt wurde habe ich bei der Programmierung eine Menge Erfahrung sammeln können. Es steht natürlich jedem frei den Quelltext weiter zu nutzen.

ich habe dem Autor schon 2-3 E-mails geschrieben - leider antwortet er nciht. im ICQ erwisch ich ihn auch nicht. Heißt ich muss mich selbst um alles kümmern:

nun, ich habe erstmal nen ganzen abend damit verbracht den Aufbau zu verstehen. Und habe dabei ähnlichkeiten (Zu meiner Fehlentwicklung) im Konzept gefunden. Nun wollte ich das ding auch mal Compilieren und damit arbeiten... geht nicht da in der Socket.pas
die Unit "CustomHandleComponent" bzw. halt die Klasse TCustomHandleComponent fehlt.

ich benutze Delphi 6 Enterprise. gibts die erst ab D7? oder gabs die mal vorher? Oder ist das eine vom autor nicht mitgelieferte Unit.

Ach ja - google hat mir nichts ausgespuckt.

Auf der Seite steht dass man den Source FREI weiter nutzen darf. Ich fasse das jetzt auch so auf dass ich ihn weiterentwickeln darf (oder lieg ich falsch?)


danke,
Daniel

Sprint 20. Nov 2004 03:12

Re: CustomHandleComponent // TCustomHandleComponent fehlen (
 
Hab mir den Sourcecode mal angeschaut. In der Unit QTypes gibt es die Klasse THandleComponent. Aber das hilft dir auch nicht wirklich weiter. Wenn du den Sourcecode umschreiben willst, dann erstelle eine neue Klasse die abgeleitet wird von TComponent. Wenn du im besitz von einer Professional Version (oder höher) bist, dann schaue dir mal die TTimer Komponente an. So musst du auch vorgehen um die Windows Nachricht abzufangen. Stichwort: AllocateHWnd, DeallocateHWnd, WindowProc, usw.

Zerolith 20. Nov 2004 14:49

Re: CustomHandleComponent // TCustomHandleComponent fehlen (
 
Code:
 ...Windows Nachricht abzufangen. Stichwort: AllocateHWnd, DeallocateHWnd, WindowProc, usw.
damit werde ich wohl einproblem haben :-) soweit bin ich leider noch nicht. Habe damit noch nie etwas gemacht und kann mir jetzt leider auch nix darunter vorstellen was ich da zu machen hab.

ich will jetzt niemanden betteln ob er mir das macht - so bin ich nicht. Aber es wäre super wenn mir jemand dabei unter die arme greift und mich dabei unterstützt.

Danke,
Daniel

Sprint 20. Nov 2004 23:22

Re: CustomHandleComponent // TCustomHandleComponent fehlen (
 
Zitat:

Zitat von Zerolith
Aber es wäre super wenn mir jemand dabei unter die arme greift und mich dabei unterstützt.

Keine Thema. Aber dazu musst du erstmal selber anfangen.

Zerolith 21. Nov 2004 02:07

Re: CustomHandleComponent // TCustomHandleComponent fehlen (
 
hmm...

was meinstn damit? ok... WOFÜR brauche ich denn dieses CustomHandle?
Kann mir mal jemand die Aufgabe von dem Teil erklären... Dann könnte ich mir folgende Fragen evtl selbst beantworten:

- > muss es Windows NAchrichten abfangen ? verarbeiten ? weiterleiten?
- > welche Nachrichten werde ich brauchen?

danke,
Daniel

Sprint 21. Nov 2004 02:39

Re: CustomHandleComponent // TCustomHandleComponent fehlen (
 
Du hast doch schon den SourceCode. Was willst du denn mehr?

Zerolith 21. Nov 2004 13:36

Re: CustomHandleComponent // TCustomHandleComponent fehlen (
 
Zitat:

Du hast doch schon den SourceCode
hab ich?

ach das mit der TTimer oder?

ja gut... eh?!? was muss ich dann für nachrichten abfangen?

Zerolith 24. Nov 2004 10:32

Re: CustomHandleComponent // TCustomHandleComponent fehlen (
 
Ich denke ich habs ;-)

Delphi-Quellcode:
type TCustomHandleComponent = class(TComponent)
  private
    Handle: HWND;
  protected
    procedure WndProc(var Msg: TMessage); virtual;
  public
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
  published
  end;

{ TCustomHandleComponent }

constructor TCustomHandleComponent.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  Handle := Classes.AllocateHWnd(WndProc);
end;

destructor TCustomHandleComponent.Destroy;
begin
  Classes.DeallocateHWnd(Handle);
  inherited Destroy;
end;

procedure TCustomHandleComponent.WndProc(var Msg: TMessage);
begin
  with Msg do
    if Msg = WM_TIMER then
      try
        // NOTHING
      except
        Application.HandleException(Self);
      end
    else
      Result := DefWindowProc(Handle, Msg, wParam, lParam);
end;
ich glaub es ist komplett falsch - aber lustigerweiße funktioniert das ;-)

thx @ Sprint


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz