AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi überkreuzender Bezug von Units .. kleiner Workaround
Thema durchsuchen
Ansicht
Themen-Optionen

überkreuzender Bezug von Units .. kleiner Workaround

Ein Thema von stoxx · begonnen am 24. Sep 2007 · letzter Beitrag vom 26. Sep 2007
Antwort Antwort
Seite 3 von 3     123   
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#21

Re: überkreuzender Bezug von Units .. kleiner Workaround

  Alt 26. Sep 2007, 13:40
Abstraktion ist auch ein Grundprinzip der OOP
Markus Kinzler
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#22

Re: überkreuzender Bezug von Units .. kleiner Workaround

  Alt 26. Sep 2007, 19:07
ICh habe auch so ein "überkreuzender Bezug"-Problem:

Delphi-Quellcode:
unit Descriptor;
uses Token,...;

TSecurityDescriptor = Class(TObject)
...
{@Name combines a parent and a creator security descriptor into a new security descriptor.
For detailed information see MSDN [url]http://msdn2.microsoft.com/en-us/library/aa446581.aspx[/url]

@param(ObjectType A Pointer to a GUID that defines the type. Set to nil if it does not exist.)
@param(GenericMap Defines the generic map class which maps generic access rights to specific access rights.)
@param(Token defines the token instance which is used to check for access. Can be nil to use
process or thread token.)
}

constructor CreatePrivateObjectSecurity(
      const ParentSecurityDescriptor: TJwSecurityDescriptor;
      const CreatorSecurityDescriptor: TJwSecurityDescriptor;
      const ObjectType : PGUID;
      const IsDirectoryObject : Boolean;
      const AutoInheritFlags : Cardinal;
      const GenericMap : TJwSecurityGenericMappingClass;
      const Token : TSecurityToken = nil); //Fehler
...

end.

unit ...Token;
uses Descriptor,...;

TSecurityToken = Class(TObject)
...
{Sicherheitsdeskriptor für das Token}
property SecurityDescriptor : TSecurityDescriptor read GetSecurityDescriptor write SetSecurityDescriptor;
...
Im Moment verwende ich folgende Deklaration:
Delphi-Quellcode:
constructor CreatePrivateObjectSecurity(
      const ParentSecurityDescriptor: TJwSecurityDescriptor;
      const CreatorSecurityDescriptor: TJwSecurityDescriptor;
      const ObjectType : PGUID;
      const IsDirectoryObject : Boolean;
      const AutoInheritFlags : Cardinal;
      const GenericMap : TJwSecurityGenericMappingClass;
      const Token : TObject = nil); //Ok
Dabei wird Token auf den Typ überprüft :

Delphi-Quellcode:
if not (Token is TSecurityToken) then
  raise
Was könnte man da Vernünftiges machen?
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Benutzerbild von stoxx
stoxx

Registriert seit: 13. Aug 2003
1.111 Beiträge
 
#23

Re: überkreuzender Bezug von Units .. kleiner Workaround

  Alt 26. Sep 2007, 19:39
Zitat:
Was könnte man da Vernünftiges machen?
erstmal überprüfen, ob nicht ein Event ausreicht und ob Du wirklich eine Referenz von einem Object auf das andere Object benötigst.
Ein TButton kommuniziert ja auch nur über Events wie OnClick zum Formular zurück und nicht mit dem direkten Aufruf eines Formulars, auf dem es sich befindet..... Und deswegen lässt er sich ja so universell verwenden
Deine Tokenklasse ist wahrscheinlich auch universell?

Ansonsten, das Prinzip mit der ClassHelper Lösung nicht verstanden? .. hmmm
Phantasie ist etwas, was sich manche Leute gar nicht vorstellen können.
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#24

Re: überkreuzender Bezug von Units .. kleiner Workaround

  Alt 26. Sep 2007, 19:56
Zitat von stoxx:
Zitat:
Was könnte man da Vernünftiges machen?
erstmal überprüfen, ob nicht ein Event ausreicht und ob Du wirklich eine Referenz von einem Object auf das andere Object benötigst.
Ein TButton kommuniziert ja auch nur über Events wie OnClick zum Formular zurück und nicht mit dem direkten Aufruf eines Formulars, auf dem es sich befindet..... Und deswegen lässt er sich ja so universell verwenden
Deine Tokenklasse ist wahrscheinlich auch universell?

Ansonsten, das Prinzip mit der ClassHelper Lösung nicht verstanden? .. hmmm
Das muss alles noch mit Delphi5 funktionieren. Sry. Habe ich vergessen zu erwähnen.
Und wie soll denn hier ein Event funktionieren?
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 18:53 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