* interface additions

This commit is contained in:
peter 2005-01-31 19:41:39 +00:00
parent 101705af37
commit 7cf6eff07f
2 changed files with 37 additions and 3 deletions

View File

@ -44,7 +44,14 @@
vmtBeforeDestruction = vmtMethodStart+sizeof(pointer)*6;
vmtDefaultHandlerStr = vmtMethodStart+sizeof(pointer)*7;
type
{ IInterface }
S_OK = 0;
S_FALSE = 1;
E_NOINTERFACE = hresult($80004002);
E_UNEXPECTED = hresult($8000FFFF);
E_NOTIMPL = hresult($80004001);
type
TextFile = Text;
{ now the let's declare the base classes for the class object }
@ -301,7 +308,10 @@
{
$Log$
Revision 1.25 2005-01-26 17:07:10 peter
Revision 1.26 2005-01-31 19:41:39 peter
* interface additions
Revision 1.25 2005/01/26 17:07:10 peter
* retrieve backtrace when exception is raised
* RaiseMaxFrameCount added to limit the number of backtraces, setting
it to 0 disables backtraces. Default is 16

View File

@ -555,9 +555,33 @@ begin
Result := False;
end;
{$ifdef HASINTF}
function TComponent.QueryInterface(const IID: TGUID; out Obj): HResult;stdcall;
begin
if GetInterface(IID, Obj) then
result:=S_OK
else
result:=E_NOINTERFACE;
end;
function TComponent._AddRef: Integer;stdcall;
begin
result:=-1;
end;
function TComponent._Release: Integer;stdcall;
begin
result:=-1;
end;
{$endif HASINTF}
{
$Log$
Revision 1.5 2004-09-22 19:57:45 michael
Revision 1.6 2005-01-31 19:41:39 peter
* interface additions
Revision 1.5 2004/09/22 19:57:45 michael
+ More optimal FreeNotification when destroying
Revision 1.4 2004/09/22 18:48:31 michael