AGB  ·  Datenschutz  ·  Impressum  







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

Type von IDispatch

Ein Thema von Tonic1024 · begonnen am 10. Mai 2012 · letzter Beitrag vom 10. Mai 2012
Antwort Antwort
Benutzerbild von Tonic1024
Tonic1024

Registriert seit: 10. Sep 2003
Ort: Cuxhaven
559 Beiträge
 
RAD-Studio 2009 Ent
 
#1

Type von IDispatch

  Alt 10. Mai 2012, 13:42
Delphi-Version: 2009
Hallo zusammen...

Ich hab mir einen Schnipsel Code nach Delphi übersetzt. Es geht um Microsoft MapPoint, falls das zukünftigen Suchenden bei der Forensuche hilft.

Im original Codeschnipsel (hab ihn leider schon verworfen, gelöscht und find ihn im netz nicht wieder) wird geprüft ob sich ein Location-Typ oder ein PushPin-Typ hinter dem IDispatch verbirgt und nur das dann auch gecasted. So wie man es normal halt auch machen würde. Das MSDN hat mir verraten, dass an der Stelle nichts Anderes vorkommen kann. Nehme ich jetzt mal ungeprüft so hin.

Meine vorläufige Lösung funktioniert zwar, ist aber irgendwie ziemlich häßlich.

Delphi-Quellcode:
    
var Loc: Location;
    Pin: PushPin;
[..]
  try
    Loc:=(GottenDispatch as Location);
  except
    Pin:=(GottenDispatch as PushPin);
  end;
Das muss doch eleganter gehen, oder? Nur so für die Code-Performance und meinen Seelenfrieden.

Gruß,

Toni
Der frühe Vogel fängt den Wurm, richtig.
Aber wird nicht auch der frühe Wurm vom Vogel gefressen?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.132 Beiträge
 
Delphi 12 Athens
 
#2

AW: Type von IDispatch

  Alt 10. Mai 2012, 14:00
Delphi-Referenz durchsuchenSupports?

PS: Das wird vom AS intern auch verwendet.
Und wenn man direkt hingeht, dann kommt man auch ohne die Exception des AS aus.

(IS=Prüfen und AS=UmwndelnOderErschießen)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#3

AW: Type von IDispatch

  Alt 10. Mai 2012, 14:02
Delphi-Quellcode:
if Supports(GottenDispatch, Location, Loc) then
  // mach was mit Loc
else if Supports(GottenDispatch, PushPin, Pin) then
  // mach was mit Pin
else
  ; // und nu?
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Tonic1024
Tonic1024

Registriert seit: 10. Sep 2003
Ort: Cuxhaven
559 Beiträge
 
RAD-Studio 2009 Ent
 
#4

AW: Type von IDispatch

  Alt 10. Mai 2012, 14:21
Gleich so viel schöner der Code.


Vielen Dank euch Beiden.


Toni
Der frühe Vogel fängt den Wurm, richtig.
Aber wird nicht auch der frühe Wurm vom Vogel gefressen?
  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 22:15 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