Zitat von
Nicolai1605:
Vielleicht würde es helfen, was denn bei diesem Codestück C++ passieren soll, denn dann könnten auch die helfen, die kein C++ können!
Gerne, es sind nur ein paar Zeilen die ich der Übersichtshalber
nicht anhängen wollte. Womöglich war das ein Fehler.
Den Code habe ich soweit verstanden und kommentiert bis
auf die zwei stellen mit den AttachDispatch.(etwa in der mitte)
Das ganze ist eine Navigations-Komponentensammling in C++
als
ActiveX geschriben. Die Docu ist sehr schlecht, und es
git nur Beispielcode für C++. Eigentlich müßte man nur
wissen was "AttachDispatch" macht.
Delphi-Quellcode:
const long addressNum = 2;
{Anlegen von drei array of String für die Lon, Lat-Position und für die Straßen}
CString xCoords[addressNum] = {"-256781", "-248770"};
CString yCoords[addressNum] = {"5687", "-2340"};
CString streetNames[addressNum] = {"Karl-Heinz-Strße", "Frankfurter Straße"};
{ Erzeuge ein ComObject welches später mit den Adress ComObjecten gefült wird }
IiwGeoAddresses iwGeoAddresses;
iwGeoAddresses.CreateDispatch("IwGeoObjects.iwGeoAddresses.1");
for ( int iAddress = 0; iAddress < addressNum; iAddress++ )
{Erzeuge für jede Adresse eine GeoAdress ComObject (beinhaltet die Geokodierung der Adresse)}
IiwGeoAddress iwGeoAddress;
iwGeoAddress.CreateDispatch("IwGeoObjects.iwGeoAddress.1" );
{Ich vermute: Ableiten eines Adresse-ComObjects aus dem GeoAdresse-ComObject }
IiwAddress iwAddress;
iwAddress.AttachDispatch( iwGeoAddress.GetAddress(), FALSE );
{Ich vermute: Ableiten eines GeoPoints-ComObjects aus dem GeoAdresse-ComObject }
IiwGeoPoints iwGeoPoints;
iwGeoPoints.AttachDispatch( iwGeoAddress.GeoPoints(), FALSE );
{Erzeuge für jede Adresse eine GeoPoint ComObject (nur die Punkte für die Darstellung auf der Karte)}
IiwGeoPoint iwGeoPoint;
iwGeoPoint.CreateDispatch( "IwGeoObjects.iwGeoPoint.1" );
{Setze die Beschriftungen der Straße unterhalb vom Punkt auf der Karte}
BOOL encoded = FALSE;
iwGeoPoint.SetPointString( xCoords[iAddress], yCoords[iAddress], "LCC_GERMANY", encoded );
{GeoPoints ist eine Liste für GeoPoint ComObjects}
iwGeoPoints.AddGeoPoints( iwGeoPoint );
{GeoAddresses ist eine Liste für GeoAddress ComObjects}
iwGeoAddresses.AddGeoAddrress( iwGeoAddress );
}
Hoffentlich hilft das weiter.
Herlichen Dank an alle die mich hir unterschtützen wollen.
Gruß Gitta