Oi Ricardo, Não sei se vc sabe para que serve um interface, mas o uso de uma interface exige que vc tenha um bom nível de conhecimento para usa-la. Tem uma série de erros no que vc está querendo implementar.
Primeiro: vc declarou 2 métodos na Interface(GetNome e SetNome) que não foram declarados no Objeto. Segundo: Seu Metodo GetNome e SetNome precisam de um atributo FNone por exemplo para ler e escrever dele. Ex. TMeuObjeto = class(TObject,IMinhaInterface) private FNome: String; function GetNome: String; procedure setNome(const Value: String); public property Nome: String Read GetNome Write SetNome; end; //Onde function GetNome: String; begin Result := FNome; end; procedure setNome(const Value: String); begin FNome := Value; end; Terceiro: Vc precisará implementar Identificadores globais unicos GUID (globally unique identifier) além dos métodos _AddRef e _Release. Seu Objeto ficaria +/- assim ... TMeuObjeto = class(TObject,IMinhaInterface) protected FRefCount: Integer; function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall; function _AddRef: Integer; stdcall; function _Release: Integer; stdcall; private FNome: String; function GetNome: String; procedure setNome(const Value: String); public procedure AfterConstruction; override; procedure BeforeDestruction; override; //class function NewInstance: TObject; override; property RefCount: Integer read FRefCount; property Nome: String read GetNome Write setNome; end; e sua interface +/- assim ... IMinhaInterface = interface function GetNome:String; procedure SetNome(Const Value : String); end; Vc instanciaria seu objeto assim : procedure TForm1.Button1Click(Sender: TObject); Var Obj : TMeuObjeto; begin try //instacia um objeto TMeuObjeto Obj := TMeuObjeto.create; //Atribui um valor ao atributo nome Obj.Nome := 'Teste'; //exibe o atributo Nome num ShowMessage ShowMessage(Obj.GetNome); finally //Desaloca o Objeto da memoria e aterra o ponteiro FreeAndNil(Obj); end; end; Vale ressaltar que sua interface deve ficar numa unit diferente da do seu Objeto. Bem, espero que tenha lhe ajudado ... Abraços Eduardo Bianchi Ribeiro -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> <*> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages <*> Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html