Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi unbekannte OpenToolsAPI-Interfaces (https://www.delphipraxis.net/150549-unbekannte-opentoolsapi-interfaces.html)

himitsu 20. Apr 2010 16:24


unbekannte OpenToolsAPI-Interfaces
 
Delphi liegen doch einige mehr oder weniger aktuelle Units mit Interfaces, zu diesem Thema, bei.

Nun versuche ich seit einer ganzen Weile schon ein bissl Überblick darüber zu bekommen
(die deprecated-Units hab ich schonmal übersehn).
Aktuell versuche ich noch die aktuell unterstüten Interfaces zu testen und dieses etwas zu sortieren.

Mir sind bis jetzt schon zwei große Interfaces aufgefallen (IOTADebuggerServices120 und IOTAModuleNotifier80),
zu welchen es absolut keine Informationen gibt und welche von meinem D2010 (Ver210) ohne Vorwarnung einfach nicht unterstützt werden.

Vorallem ist nirgendwo, weder in den Delphi-Units, noch in der OH oder Google eine Meldung zu finden, daß diese nicht mehr unterstützt werden.

Bis auf diese Seite, wo im Grunde auch nichts dazu steht, hab ich einfach absolut nichts dazu entdecken können:
http://conferences.embarcadero.com/article/32119
(OK, die Google liefert zwar noch die Delphi-QuellCodes bei koders.com, aber das hilft ja nun übehaupt nicht weiter, denn diese hab ich ja sowieso schon)

http://www.google.de/search?q=%22IOT...eNotifier80%22


Aktuell werde ich diese Interfaces wohl einfach versuchen zu übersehn/ignorieren, aber ich bin dennoch neugierig, was aus Diesen geworden ist.

Uwe Raabe 20. Apr 2010 17:07

Re: unbekannte OpenToolsAPI-Interaces
 
Wie stellst du denn fest, daß diese Interfaces nicht unterstützt werden?

Wird denn IOTAModuleNotifier90 unterstützt? Das ist schließlich von IOTAModuleNotifier80 abgeleitet, stellt also die gleiche Funktionalität zur Verfügung. Entsprechendes gilt für IOTADebuggerServices, das von IOTADebuggerServices120 abgeleitet ist.

himitsu 20. Apr 2010 17:17

Re: unbekannte OpenToolsAPI-Interaces
 
Indem ich beim Boss der ToolAPI "BorlandIDEServices" und weiter bei den anderen unterstützten Interfaces angefragt hab und diese jeweils nie ein Interface lieferten.

Ja, IOTAModuleNotifier90 und sein Verwandter IOTAModuleNotifier, sowie IOTADebuggerServices, IOTADebuggerServices60 und IOTADebuggerServices90 werden unterstützt.

Bin ziwschendurch immer mal wieder dabei eine Tabelle der Vererbungslinien und der jeweiligen Unterstützungen zu erstellen.
Brauch aber noch eine Weile, um die restlichen Logdateien auszuwerten.

RWarnecke 20. Apr 2010 17:25

Re: unbekannte OpenToolsAPI-Interaces
 
Hallo himitsu,

wie ich meinen Code-Orakel Wizard für die Delphi IDE geschrieben habe, habe ich festgestellt, dass die Zahl am Ende des Interfacesnamens immer die Version des Delphis betrifft.

himitsu 20. Apr 2010 17:36

Re: unbekannte OpenToolsAPI-Interaces
 
Zitat:

Zitat von RWarnecke
wie ich meinen Code-Orakel Wizard für die Delphi IDE geschrieben habe, habe ich festgestellt, dass die Zahl am Ende des Interfacesnamens immer die Version des Delphis betrifft.

Das hab ich auch schon festgestellt, dennoch sollen ja "bekanntlich" bestehende Interfaces nicht verändert werden.

Fast alle Interfaces sind auch voneinander abgeleitet
z.B.:
Delphi-Quellcode:
IOTABreakpoint40  = interface(IUnknown)         ... end;
IOTABreakpoint50  = interface(IOTABreakpoint40) ... end;
IOTABreakpoint80  = interface(IOTABreakpoint50) ... end;
IOTABreakpoint120 = interface(IOTABreakpoint80) ... end;
IOTABreakpoint   = interface(IOTABreakpoint120) ... end;
wobei das Interface ohne Nummer die aktuelle Version darstellt.
Somit wäre es ja fatal einfach so ein Interface zu löschen, bzw. nicht zu unterstützen
und darauf dann nichtmal hinzuweisen.

Wenn ich jetzt z.B. einen alten Delphi-4-Wizard hätte und dort IOTADebuggerServices120 verwendete, dann dann würde der jetzt nicht laufen und man würde nirgendwo erfahren können, warum der nichtmehr läuft, obwohl sein Interface in Delphi 2010 (Ver210) deklariert und nichtmal als deprecated markiert ist.

RWarnecke 20. Apr 2010 17:50

Re: unbekannte OpenToolsAPI-Interaces
 
Ich bin dann hergegangen und habe immer das niedrigste Interface genommen, wo meine Funktionen drin sind, die ich brauchte. Ich muss aber dabei bemerken, dass die Wizards für die einzelnen IDE-Versionen trotzdem in der Version kompiliert werden sollten. Also ein Wizard für Delphi 2006 auch in der 2006'er IDE u.s.w.

Ralf Kaiser 20. Apr 2010 18:02

Re: unbekannte OpenToolsAPI-Interaces
 
Zitat:

Zitat von himitsu
und welche von meinem D2010 (Ver210) ohne Vorwarnung einfach nicht unterstützt werden


120 ist doch D2007, oder? 130 gab es nie (Emba wollte abergläubische Entwickler vor einer Version "13" schützen) und D2010 sollte dann 140 sein.

Zumindest habe ich in D2007 letztens eine Menge 120er-Packages installiert als ich den Rechner neu aufgesetzt habe.

(nicht, dass das jetzt irgendwas mit dem Ursprungsproblem zu tun hätte... :wink: )


EDIT: auch falsch: D2007 ist, zumindest laut einiger INC-Dateien, 185 und D2010 ist 210 (wieso habe ich bloss 120 gelesen????))

himitsu 20. Apr 2010 18:16

Re: unbekannte OpenToolsAPI-Interaces
 
Joar, Delphi 2010 ist die Version 14.0, aber hat einen Compiler 21.0 (VER210) ... hmmm, jetzt wo du's sagst ... welcher Version mag das wohl nun sein. :gruebel:
Da zumindestens die kleinesen Nummern in den Interfaces eine 80 sind, könnte es schon die CompilerVersion sein.
Compier 8.0 (VER80) = Delphi 1.0

Ich schau mal im Delphi 7, was es da schon gibt.

Uwe Raabe 20. Apr 2010 19:06

Re: unbekannte OpenToolsAPI-Interfaces
 
Es ist die Version der Delphi.exe bzw. der BDS.exe: Embarcadero® Delphi® 2010 Version 14.0.3593.25826 = 140

Angefangen hat das wohl mit Delphi 4 oder so.

himitsu 20. Apr 2010 19:20

Re: unbekannte OpenToolsAPI-Interfaces
 
Hmmm, hab inzwischen die ganze Liste durch.

Es gibt die Nummern 40 50 60 70 80 90 100 110 120 und 140
Dann könnte es mit der IDE-Version doch stimmen, denn das erste Delphi hatte ja den Compiler 80.

Wenn ich nun genauer überleg, dann ist die 14.0 der IDE schon logischer ... sonst könnte man denken die letzen Jahre sei nicht viel passiert. :roll:


Ach ja, was das Ganze soll: Nachdem Delphi mir mehrmals Dateien geschrottet hatte (die letzen Jahre), wollte ich mir endlich mal eine etwas andere delphiinterne Dateisicherung (Versionskontrolle) erstellen, inkl. einer automatischen Wiederherstellung nach einem IDE/Windows/PC-Absturz.

Leider ist das mit den Wizards nicht soooooo einfach und ich sah erstmal überhaupt nicht durch, vorallem da es hierzu noch recht wenige Infos und Tutorials gibt. :cry:

Nja, also erstehn nun vorerst ein paar eigene Wrapperinterfaces und ein paar passenden Basis-Wizard-Objekten, mit den wichtigsten Schnittstellen, aber dafür muß ich erstmal wissen was es alles gibt und wie was zusammenarbeitet.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:09 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