Thema: Delphi String zu Funktion

Einzelnen Beitrag anzeigen

Dezipaitor

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

Re: String zu Funktion

  Alt 21. Feb 2008, 20:37
Ich hab dasselbe Problem:
EqualSid erfordert eine intern Klasse, in COM ist es jedoch ein Interface.

Die untere Variante funktioniert zwar. Aber ich denke nur mit der InProc Variante.
Was mache ich aber bei OutProc oder bei Interface Zeigern in verschiedenen Apartments?


Delphi-Quellcode:
ISid = interface
...
  hidden function GetInternalSid : PChar; safecall;
...
end;

TISidImp = class(...,ISid)
private
  fInternalSid : TJwSid;
...
public
   function TISidImp.EqualSid(const Sid : ISid) : Boolean; safecall;
   function TISidImp.GetInternalSid : PChar; safecall;

function TISidImp.EqualSid(const Sid : ISid) : Boolean
begin
  result := fInternalSid.EqualSid(Sid ???);
end;

//Einführung diser Funktion...

function TISidImp.GetInternalSid : PChar;
begin
  result := fInternalSid;
end;

//...ermöglicht:

function TISidImp.EqualSid(const Sid : ISid) : Boolean
begin
  result := fInternalSid.EqualSid(TJwSid(Sid.GetInternalSid));
end;
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat