Muster einer Visual Basic-Schnittstelle

 

 

'************************************************************************

'*  Muster einer Visual Basic-Schnittstelle für Microsoft Visual Studio *

'*     zu einigen Funktionen der 32 Bit Dynamic Link Library GeoDLL     *

'*    Sie muss gegebenenfalls um andere Funktionen erweitert werden.    *

'*  Die Schnittstelle kann direkt in den VB-Quellcode eingebaut werden. *

'*                                                                      *

'*                           Autor: unbekannt                           *

'*                                                                      *

'*   Im Aufrufverzeichnis von GeoDLL müssen die Dateien geodll32.dll    *

'*                   und geodllbn.bin vorhanden sein.                   *

'*                                                                      *

'* Es sind zahlreiche Änderungen durchgeführt worden. Leider hatten wir *

'* nicht die Möglichkeit zu compilieren. Bei eventuell noch enthaltenen *

'*              Syntaxfehlern bittet der Autor um Mitteilung!           *

'************************************************************************

 

 

'Function deklarieren

Private Declare Function coordtrans3 Lib "GeoDLL32" ( _

ByVal nKoordXQ As Double, _                '8 Byte

ByVal nKoordYQ As Double, _                '8 Byte

ByVal nKoordSysQ As UShort, _              '2 Byte

ByVal nRefSysQ As UShort, _                '2 Byte

ByVal nNotationQ As UShort, _              '2 Byte

ByRef nKoordXZ As Double, _                '4 Byte (Pointer)

ByRef nKoordYZ As Double, _                '4 Byte (Pointer)

ByVal nKoordSysZ As UShort, _              '2 Byte

ByVal nRefSysZ As UShort, _                '2 Byte

ByVal nNotationZ As UShort, _              '2 Byte

ByVal nStreifenZ As UShort) _              '2 Byte

As UInteger                                '4 Byte

 

Private Declare Function setunlockcode Lib "GeoDLL32" ( _

ByVal pszcode As String,

ByVal pszliznehm As String) As UInteger

 

Private Sub Command1_Click()

 

'Variablen deklarieren

   Dim nKoordXQ As Double

   Dim nKoordYQ As Double

   Dim nKoordSysQ As UShort

   Dim nRefSysQ As UShort

   Dim nNotationQ As UShort

   Dim nKoordXZ As Double

   Dim nKoordYZ As Double

   Dim nKoordSysZ As UShort

   Dim nRefSysZ As UShort

   Dim nNotationZ As UShort

   Dim nStreifenZ As UShort

   Dim rc As UInteger

 

'Parameterübergabe

   nKoordXQ = 10.466365

   nKoordYQ = 48.540948

   nKoordSysQ = 1

   nRefSysQ = 1

   nNotationQ = 0

   nKoordXZ = 0

   nKoordYZ = 0

   nKoordSysZ = 2

   nRefSysZ = 1

   nNotationZ = 0

   nStreifenZ = 3

 

'Funktionsaufruf

'rc = setunlockcode("12345-67890","MicroModia GmbH") 

'Die Freischaltschluessel stimmen natürlich nicht!

'Sie müssen bei Killet GeoSoftware Ing.-GbR erworben werden!

'Vollversion: Der Freischaltschluessel muss bei der 1. Eingabe stimmen!

'Testversion: Die Funktion darf nicht aufgerufen werden!

'Die Testversion funktioniert pro Programmlauf kurze Zeit ohne Freischaltung!

 

rc = coordtrans3(nKoordXQ, nKoordYQ, nKoordSysQ, nRefSysQ, nNotationQ, _

nKoordXZ, nKoordYZ, nKoordSysZ, nRefSysZ, nNotationZ, nStreifenZ)

 

End Sub