AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

COM und ein redefiniertes GetServer

Ein Thema von Sherlock · begonnen am 17. Apr 2008 · letzter Beitrag vom 17. Apr 2008
Antwort Antwort
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.765 Beiträge
 
Delphi 11 Alexandria
 
#1

COM und ein redefiniertes GetServer

  Alt 17. Apr 2008, 09:19
Hi zusammen,

ich versuche gerade COM Objekte (LeadTools) in Delphi7 als Komponenten einzubinden. Klaglos erzeugt Delphi zunächst die Wrapper, wenn ich dann aber mal die neuen Komponenten kompilieren will erhalte ich eine Fehlermeldung, weil in der Wrapperunit ein GetServer (TOleServer) eingesetzt werden soll (was ja auch normal ist). Dieses GetServer ist aber auch eine von den LeadTools eingeführte Methode, die leider gänzlich andere Parameter erwartet.

Der Compiler bricht dann ab, und ich bin angeschmiert, weil ich jetzt die ganze Eventbehandlung von Hand abwickeln müsste.

Wie bringe ich den Wrapper dazu zu bemerken, daß er was falsch gemacht hat, oder wie korrigiere ich das Problem...

Delphi-Quellcode:
// Automatisch erzeugte Routine für die Komponente
procedure TLEADDicomNet.Connect;
var
  punk: IUnknown;
begin
  if FIntf = nil then
  begin
    punk := GetServer; // Das Problem
    ConnectEvents(punk);
    Fintf:= punk as ILEADDicomNet;
  end;
end;
Sherlock
Oliver
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.545 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: COM und ein redefiniertes GetServer

  Alt 17. Apr 2008, 10:51
Versuch es doch mal mitpunk := Unitname.GetServer; Beziehungsweise, wenn es eine Methode ist, mitpunk := Klassenname.GetServer; Und wenn es eine Methode von TLEADDicomNet sein sollte:punk := self.GetServer; Mehr Möglichkeiten fallen mir spontan nicht mehr ein
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.765 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: COM und ein redefiniertes GetServer

  Alt 17. Apr 2008, 12:46
Hmm, das Problem ist, daß GetServer eine Methode der Klasse TOleServer der Unit OleServer ist. Ich weiss zu diesem Zeitpunkt nicht den Namen des Objekts... Klassenname.Methode funktioniert nicht.

Ich habe mal punk := TOleServer(Self).GetServer probiert, aber das geht nicht.

Sherlock
Oliver
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.545 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: COM und ein redefiniertes GetServer

  Alt 17. Apr 2008, 12:54
Ist TLEADDicomNet ein Nachfahre von TOLEServer?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.765 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: COM und ein redefiniertes GetServer

  Alt 17. Apr 2008, 13:03
Jawoll, die deklaration, die der Wrapper macht sieht so aus:

TLEADDicomNet = class(TOleServer) Ich denke, da kommt auch jetzt das Problem, denn in der Klassendefinition deklariert er halt ein eigenes GetServer, das das TOleServer.GetServer, ausblendet.

Sherlock
Oliver
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.545 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: COM und ein redefiniertes GetServer

  Alt 17. Apr 2008, 13:05
Und self.GetServer nimmt er auch nicht?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.765 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: COM und ein redefiniertes GetServer

  Alt 17. Apr 2008, 13:12
Ne, geht nicht, aber ich habs:

punk := inherited GetServer;

Sherlock
Oliver
  Mit Zitat antworten Zitat
Benutzerbild von nicodex
nicodex

Registriert seit: 2. Jan 2008
Ort: Darmstadt
286 Beiträge
 
Delphi 2007 Professional
 
#8

Re: COM und ein redefiniertes GetServer

  Alt 17. Apr 2008, 13:14
Zitat von Sherlock:
Ich denke, da kommt auch jetzt das Problem, denn in der Klassendefinition deklariert er halt ein eigenes GetServer, das das TOleServer.GetServer, ausblendet.
Dann würde ich die GetServer der generierten Klasse manuell umbenennen (GetServer_ oder im C++/IDL-Stil get_Server).
  Mit Zitat antworten Zitat
Antwort Antwort


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 10:31 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