Allgemeines
MapEdit Desktop/Professional stellt eine .NET API zur Verfügung.
Alle Bespiele sind in C# geschrieben.
Sie können neben C# auch jede andere .NET Sprache verwenden (wie VB.NET etc)
wir können aber Entwicklungssupport ausschliesslich in C# anbieten.
In Topobase/Map verwendetet VB Scripte bei Skript Buttons, Prüfcode, Formeln etc
können nicht 1:1 verwendet werden.
Bei Topobase wurde VB Script verwendet während MapEdit VB.NEt Script verwendet.
Verwechseln Sie VB Script nicht mit VB.NET Script auch wenn diese ähnlich aussehen, sie sind es nicht!
Topobase API Funktionen können in MapEdit nicht verwendet werden und müssen auf
die entsprechenden MapEdit API bzw auf C#/VB.NET Code umgestellt werden.
Topobase API Funktionen sind in MapEdit nicht möglich da Topobase eine komplett andere
Technologie und Systemaufbau hat als MapEdit.
MapEdit ist eine Client-Server Programm das via Internet/Intranet läuft während Topobase eine reine Client Applikation ist
die nicht internet fähig ist. Dadurch ergibt sich das Funktionen nicht 1:1 vergleichbar sind.
Wir empfehlen Ihnen Visual Studio 2022 oder 2019 zu verwenden um Plugins für MapEdit zu erstellen. Für diese Anleitung wurde Visual Studio 2022 mit C# verwendet. Dies Anleitung bezieht sich auf MapEdit Version 23.2.141 und höher. Alle Beispiele bezieht sich auf MapEdit Version 23.2.142 und höher. Benutzten Sie keine MapEdit Versionen älter als diese.
Die neusten DLLs finden Sie jeweils im Unterverzeichnis "CoreDlls" sofern Sie keinen anderen Installationsverzeichnis gewählt haben
C:\Program Files (x86)\MuM MapEdit\ApiSamples\CoreDlls
Bitte beachten Sie das Sie nach jedem Release Update ihre Skripte neu kompilieren müssen da fortlaufend Änderungen an der API geschehen.
Wenn Sie eigene Plugins programmiert haben müssen Sie diese mittels Setup die neusten DLLs installieren und ihre Plugins gegen die neusten DLLs aus C:\Program Files (x86)\MuM MapEdit\ApiSamples\CoreDlls neu kompilieren.
Die DLL XSystem.dll ist nicht teil der MapEdit API und kann ohne Vorwarnung geändert werden. Nutzung dieser DLL geschieht auf eigene Gefahr.
Sollten Sie die CoreDlls nicht installiert haben, starten Sie das Installations Programm MapEdit.msi und wählen Sie "Api Samples"
Die neusten DLLs finden Sie dann unter
C:\Program Files (x86)\MuM MapEdit\ApiSamples\CoreDlls
Die neuste Version der DLLs finden Sie jeweils auch ohne Setup in dem Sie im AppBuilder den "Über" Dialog öffnen. (zu finden unter Menu "Datei"->"Über")
Klicken Sie auf den Knopf bei "Local Storage". Es öffnet sich dann der Datei Explorer mit dem Verzeichnis.
Beispiel:
C:\Users\heyho\AppData\Roaming\MapEditDesktop\DevWin2023R2\Repositories\Default
gehen Sie von diesem Ordner zwei Verzeichnis hoch und dann in das Verzeichnis "app".
Beispiel:
C:\Users\heyho\AppData\Roaming\MapEditDesktop\DevWin2023R2\app
Hier finden Sie auch alle aktuellen DLLs. Kopieren Sie dann die von Ihnen benötigten DLLs in den Ordner CoreDLLs.
Ab Version 23.2.37 können Sie stattdessen den Knopf "Update API DLLs" verwenden. Drücken Sie den Knopf und wählen Sie ihr CoreDLL Verzeichnis aus. Das Programm aktuallisiert dann alle DLLs des Verzeichnisses.
Referenzieren Sie NIE direkt DLLs aus dem Ordner "app" des Roaming Verzeichnisses oder des unter "MapEditStorageName" in der MapEdit.ini eingestellten Verzeichnisses. Erzeugen Sie wenn sie diese nutzen wollen immer eine Kopie in das Verzeichnis CoreDlls.
Machen Sie das nicht, blockieren sie damit ggf den internen automatischen DLL Update von MapEdit wenn eine neue Version von MapEdit auf dem MapEdit Server installiert wird.