Seite 1 von 1

Xbase++ DLL als COM zur Nutzung in C#

Verfasst: So, 18. Aug 2019 11:16
von Benz
Hi,
Ich suche momentan einen Weg um eine Xbase++ DLL als COM zu registrieren und die Xbase++ Methoden der DLL direkt in einem C# Programm aufzurufen. Das muss doch irgendwie möglich sein.

Viele Grüße

Re: Xbase++ DLL als COM zur Nutzung in C#

Verfasst: So, 18. Aug 2019 12:43
von georg
Hallo, Benz -


ich denke nicht, dass das möglich ist. Xbase++ ist eine eigene Laufzeitumgebung, die eingebunden werden muss, da geht es nicht nur um einen Funktionsaufruf aus einer DLL.

Re: Xbase++ DLL als COM zur Nutzung in C#

Verfasst: So, 18. Aug 2019 14:13
von HaPe
Hallo Zusammen !
ich denke nicht, dass das möglich ist. Xbase++ ist eine eigene Laufzeitumgebung, die eingebunden werden muss,...
Wenn Xbase++ die Möglichkeit hat einen COM-Server als DLL oder EXE zur Verfügung zu stellen, dann kann man von jeder Programmier-Sprache darauf zugreifen die COM nutzen kann, also auch von C#.
Natürlich muss "Rund" um den Xbase++-COM-Server dessen notwendige Runtime installiert sein, sonst gehts nicht.

Die COM-Schnittstelle (nicht RS-232) ist uralt und wurde 1992 eingeführt: https://de.wikipedia.org/wiki/Component_Object_Model

Re: Xbase++ DLL als COM zur Nutzung in C#

Verfasst: So, 18. Aug 2019 23:54
von AUGE_OHR
HaPe hat geschrieben: So, 18. Aug 2019 14:13 Wenn Xbase++ die Möglichkeit hat einen COM-Server als DLL oder EXE zur Verfügung zu stellen,
wäre mir neu das Xbase++ so etwas könnte.

@Benz
Man könnte vielleicht einen "Dienst" daraus machen ... sag doch mal genauer was du machen willst :?:

Re: Xbase++ DLL als COM zur Nutzung in C#

Verfasst: Do, 05. Sep 2019 15:44
von Benz
Ich würde gerne DBASE-Datenbanken mit NTX Indices mit Xbase++ Funktionen aufrufen und ein Handle zurückgeben, das ich in C# nutzen kann. C# hat zwar die Möglichkeit Dbase Datenbanken zu öffnen, aber meines Wissens nach gibt es keine Möglichkeit NTX Indizes zu nutzen. oder sehe ich das falsch?

Re: Xbase++ DLL als COM zur Nutzung in C#

Verfasst: Fr, 06. Sep 2019 9:55
von AUGE_OHR
Benz hat geschrieben: Do, 05. Sep 2019 15:44 Ich würde gerne DBASE-Datenbanken mit NTX Indices mit Xbase++ Funktionen aufrufen und ein Handle zurückgeben, das ich in C# nutzen kann.
hm ...
Benz hat geschrieben:C# hat zwar die Möglichkeit Dbase Datenbanken zu öffnen, aber meines Wissens nach gibt es keine Möglichkeit NTX Indizes zu nutzen. oder sehe ich das falsch?
sicherlich gibt es Möglichkeiten eine DBF unter C# zu öffnen z.b. ODBC aber was willst du da von Xbase++ übergeben :?:

um einen Datensatz in einer DBF zu identifizieren brauchst du nur die RECNO() :!:
die würde ich wenn einer anderen App bereitstellen.

---

kannst du die Situation genauer beschreiben wo du was zwischen 2 x App machen willst :?:
wenn es um den Inhalt eines Datensatz geht ist unter Windows das Clipboard immer eine Wahl.

p.s. der Umgekehrte Weg würde gehen also eine COM / DLL in C# wenn man ein iDISPATCH Interface einbaut.

Re: Xbase++ DLL als COM zur Nutzung in C#

Verfasst: Fr, 06. Sep 2019 10:28
von HaPe
Hallo Benz !
sicherlich gibt es Möglichkeiten eine DBF unter C# zu öffnen z.b. ODBC ...
Oder über den OLE-DB-Treiber von Foxpro plus die Foxpro-Runtime.
Damit solltest du auch NTX-Indizes lesen/schreiben können.

OLE-DB mit C# auf Foxpro-DBFs + CDX habe ich im Einsatz.