Autor Beitrag
Erichgue
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 86

Win XP/2000/7
TurboPacal 7.0; Delphi 2/5/7; BDS 2006/2010/XE6; C#; MSSQl 2000
BeitragVerfasst: Mi 27.06.07 14:59 
Hallo,
bedingt durch die kommende betriebsinterne Umstellung auf C# (schluchz)
soll geprüft werden, ob bestehende D7 Komponenten in ActiveX umgewandelt, und dann in C# eingebunden werden können.

Hat jemand damit bereits Erfahrung gesammelt?

Verträgt sich Delphi7 ActiveX mit C#?.
Wir dachten da an evtl. Problemem mit dem .NET Framework.
Die Komponenten beinhalten auch graphische Ausgaben.

Wären für jeden Tip dankbar.

Gruß

Erich Günthner


Zuletzt bearbeitet von Erichgue am Mo 07.01.08 10:04, insgesamt 1-mal bearbeitet
Bernhard Geyer
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 721
Erhaltene Danke: 3



BeitragVerfasst: Do 28.06.07 07:36 
Wenn ihr ActiveX verwendet verliert ihr einige Vorteile von .NET.

Wieso wollt ihr denn umstellen? Welche Vorteile verspricht ihr euch denn? Ist es evtl. nicht sinnvoll gleich von 0 zu beginnen und andere über Jahre gewachsene Probleme des Systems zu beheben?
Erichgue Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 86

Win XP/2000/7
TurboPacal 7.0; Delphi 2/5/7; BDS 2006/2010/XE6; C#; MSSQl 2000
BeitragVerfasst: Do 28.06.07 08:18 
user profile iconBernhard Geyer hat folgendes geschrieben:
Wenn ihr ActiveX verwendet verliert ihr einige Vorteile von .NET.


Das ist eine Aussage, mit der ich schon etwas mehr anfangen kann.

Zitat:
Wieso wollt ihr denn umstellen?


Also mal erhlich, was mich nervt sind Antworten, die an der Frage vorbeigehen.
Ich habe nicht gefragt, ob man umstellen soll, sondern "Hat jemand damit bereits Erfahrung gesammelt?"
Bei uns sitzen genügend Leute herum, die wissen, warum wir umstellen (sollen).

Zitat:
Welche Vorteile verspricht ihr euch denn?

Gut, ich laß mich darauf ein.
Wir machen Mess- und Prüfsystem für die Industrie. (Bosch; Siemens; SEW usw);
Ein Großteil unserer Kunden verlangt, das die Software .NET fähig ist.
Mit C# haben wir beide Klientele bedient.
Delphi 2005 und co kommt nicht in Frage weil Buggy und die Zukunft nicht gesichert ist.
C# wird es geben, selbst wenn es Delphi nicht mehr gibt.
So, reicht die Info?

Zitat:

Ist es evtl. nicht sinnvoll gleich von 0 zu beginnen und andere über Jahre gewachsene Probleme des Systems zu beheben?


Nein, Code der im Laufe von über 10 Jahren entstanden ist auf C# zu portieren ist der blanke Wahnsinn.
Das wäre resourecenbindet und kostenspielig.
Aus betriebswirschaftlicher Sicht Selbsmord.
Probleme die vorhanden sind, sind nicht gewachsen, sonder wurden im Lauf der Zeit behoben!


Gruß

Erich
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Do 28.06.07 12:44 
user profile iconErichgue hat folgendes geschrieben:
Also mal erhlich, was mich nervt sind Antworten, die an der Frage vorbeigehen.
Ich habe nicht gefragt, ob man umstellen soll, sondern "Hat jemand damit bereits Erfahrung gesammelt?"
Bei uns sitzen genügend Leute herum, die wissen, warum wir umstellen (sollen).
Ein bisschen freundlicher bitte. Bernhard wollte Dir sicherlich nur helfen und dies ist nun mal ein Diskussionsforum, indem man auch mal etwas mehr bekommt als nur die Antwort auf eine Frage. Die meisten Fragenden schätzen es, auch Input zu bekommen, der über die Frage hinaus geht.

user profile iconErichgue hat folgendes geschrieben:
Nein, Code der im Laufe von über 10 Jahren entstanden ist auf C# zu portieren ist der blanke Wahnsinn.
Das wäre resourecenbindet und kostenspielig.
Aus betriebswirschaftlicher Sicht Selbsmord.
Vielleicht ist Hydra etwas für Euch, es ist darauf zugeschnitten, nur einzelne Teile eines Projektes zu portieren.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Erichgue Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 86

Win XP/2000/7
TurboPacal 7.0; Delphi 2/5/7; BDS 2006/2010/XE6; C#; MSSQl 2000
BeitragVerfasst: Do 28.06.07 12:58 
user profile iconChristian S. hat folgendes geschrieben:
Ein bisschen freundlicher bitte. Bernhard wollte Dir sicherlich nur helfen und dies ist nun mal ein Diskussionsforum, indem man auch mal etwas mehr bekommt als nur die Antwort auf eine Frage. Die meisten Fragenden schätzen es, auch Input zu bekommen, der über die Frage hinaus geht.


Sollte ich jemanden zu nahe getreten sein, möchte ich mich hiermit entschuldigen.
Es gibt aber auch Group-Teilenhmer, die meinen eine Entscheidung, die in einer Firma beschlossen wurde, beurteilen zu können.
Wenn die GL sagt es wird umgestellt, dann wird umgestellt. Meine Aufgabe ist es dies zu ermöglichen.
Diskussionen über das wenn und aber habe ich hier schon gehabt.
Sorry @Bernhard!

Zitat:
Vielleicht ist Hydra etwas für Euch, es ist darauf zugeschnitten, nur einzelne Teile eines Projektes zu portieren.

Danke für den Tip, kam auch schon von Bernhard.
Wir wollen keine Teile eines Projektes portieren.
Wir haben Treiber-DLL und dazu die passenden Komponenten für Messdatensysteme in Delphi geschrieben.
Hinzu kommen diverse Komponenten wie Chart, Dateneditor usw.
ActiveX hat sich deswegen gut angehört, weil es in C++ und VB usw auch geht.
Die Messdatensysteme sollen auch mit anderen Programmiersprachen verwendet werden können.

Gruß

Erich
Bernhard Geyer
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 721
Erhaltene Danke: 3



BeitragVerfasst: Do 28.06.07 22:41 
user profile iconErichgue hat folgendes geschrieben:
Sollte ich jemanden zu nahe getreten sein, möchte ich mich hiermit entschuldigen.
Angenommen
user profile iconErichgue hat folgendes geschrieben:
Es gibt aber auch Group-Teilenhmer, die meinen eine Entscheidung, die in einer Firma beschlossen wurde, beurteilen zu können.
Wenn die GL sagt es wird umgestellt, dann wird umgestellt. Meine Aufgabe ist es dies zu ermöglichen.
Diskussionen über das wenn und aber habe ich hier schon gehabt.
Sorry @Bernhard!

Es geht nur darum den Entscheidungsprozess zu verstehen. Ich war selbst bei einer Firma die schon 2001 (!) die Chance gehabt hat eine System komplett neu zu entwickeln. Nach einigen Tests waren die Entwickler (C/C++/Delphi) größten Teils dafür das in .NET zu erledigen. Nachdem unser neuer Entwicklungsleiter mit sein externen "Spezeln" jedoch beschlossen hat das in C/C++ mit MFC/ATL/Consolenanwendunge und Delphi zu machen habe ich (und nicht nur ich) die Firma gewechelt (weiß gar nicht ob mit der Nicht-.NET-Entscheidung das Projekt letztendlich gegen die Wand gefahren wurde, Entwicklungsleiter wurde auch bald entlassen). Und es gab in schon diverse "Umsteiger" in Foren die nur aufgrund von Marketingaussagen das durchgeführt ohne die Konsequenzen bewußt zu sein.

user profile iconErichgue hat folgendes geschrieben:
Wir wollen keine Teile eines Projektes portieren.
Wir haben Treiber-DLL und dazu die passenden Komponenten für Messdatensysteme in Delphi geschrieben.
Hinzu kommen diverse Komponenten wie Chart, Dateneditor usw.
ActiveX hat sich deswegen gut angehört, weil es in C++ und VB usw auch geht.
Die Messdatensysteme sollen auch mit anderen Programmiersprachen verwendet werden können.

Haben die DLL's ähnliche oder gleiche Schnittstellen? Falls ja wäre das Fassade oder Adapter-Muster mit einer abstraken Fabrik evtl. was für euch. Von den GUI-Komponenten wird ein C-Kompatible-Schnittstelle erstellt (oder Hydra genommen) und den Nachteilen von ActiveX (DLL-Hölle, Nötige Registrierung, ...) zu umgehen. Der Aufwand ist erstmals etwas höher, jedoch kann man damit auch (bei guter Auslegung) Schritt für Schritt die Alt-Komponenten durch reine .NET-Komponenten ersetzen bzw. neue Komponenten aufgrund der Kapslung gleich mit C# erstellen.
Erichgue Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 86

Win XP/2000/7
TurboPacal 7.0; Delphi 2/5/7; BDS 2006/2010/XE6; C#; MSSQl 2000
BeitragVerfasst: Fr 29.06.07 07:44 
user profile iconBernhard Geyer hat folgendes geschrieben:

Angenommen


Puh, ging noch mal gut!

Zitat:

Es geht nur darum den Entscheidungsprozess zu verstehen. Ich war selbst bei einer Firma die schon 2001 (!) die Chance gehabt hat eine System komplett neu zu entwickeln. Nach einigen Tests waren die Entwickler (C/C++/Delphi) größten Teils dafür das in .NET zu erledigen. Nachdem unser neuer Entwicklungsleiter mit sein externen "Spezeln" jedoch beschlossen hat das in C/C++ mit MFC/ATL/Consolenanwendunge und Delphi zu machen habe ich (und nicht nur ich) die Firma gewechelt (weiß gar nicht ob mit der Nicht-.NET-Entscheidung das Projekt letztendlich gegen die Wand gefahren wurde, Entwicklungsleiter wurde auch bald entlassen). Und es gab in schon diverse "Umsteiger" in Foren die nur aufgrund von Marketingaussagen das durchgeführt ohne die Konsequenzen bewußt zu sein.


Ganz klar.
Nur wir müssen! Unserer Kunden wollen Software haben, die auf .NET basiert.
Ob das bei unserern Kunden immer reiflich überlegt ist bezweifle ich.
Da kommen neue Abteilungsleiter, frisch von irgendwoher,
und meine das diese oder jene Technologie das allerbeste für die Firma sei.
Nur was willste machen. Als Lieferant mußte mitgehen.

Ich wäre lieber bei Delphi geblieben. (gibts ja auch für .NET)
Alleine wenn man berücksichtig, wieviel Zeit und Resourcen durch die Umstellung auf C# verbraucht werden.
Auf C# hätte man immer noch gekonnt, sollte Delphi .NET nicht geeignet sein.

Zitat:

Haben die DLL's ähnliche oder gleiche Schnittstellen?

Ja, haben sie.

Zitat:

Falls ja wäre das Fassade oder Adapter-Muster mit einer abstraken Fabrik evtl. was für euch. Von den GUI-Komponenten wird ein C-Kompatible-Schnittstelle erstellt (oder Hydra genommen) und den Nachteilen von ActiveX (DLL-Hölle, Nötige Registrierung, ...) zu umgehen. Der Aufwand ist erstmals etwas höher, jedoch kann man damit auch (bei guter Auslegung) Schritt für Schritt die Alt-Komponenten durch reine .NET-Komponenten ersetzen bzw. neue Komponenten aufgrund der Kapslung gleich mit C# erstellen.


Das hört sich gut an.
Werde dein posting mal an unserern "Softwarebeauftragten" weiterleiten, wenns recht ist?
Also du meinst, das ActiveX nicht das beste ist?
Daraus schließe ich auch, das ActiveX in C# nicht geht?

Danke schon mal für die Infos

Gruß

Erich


Zuletzt bearbeitet von Erichgue am Di 03.07.07 09:29, insgesamt 1-mal bearbeitet
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Fr 29.06.07 12:30 
COM-Komponenten(aka ActiveX) kann man natürlich in allen DOTNET Sprachen benutzen genauso wie man als COM-Komponenten veröffentlichte DOTNET Assemblies in nativen Umgebungen aufrufen kann. Ihr müßt nur darauf achten welche Datentypen über die COM-Schnittstellen ausgetauscht werden.

Die Frage ist weiterhin warum die Kunden NET verlangen (bei selben Features wie eine native Anwendung).
Wenn es Ihnen insbesondere um die enger geschnürte Security in NET geht ( ich hoffe es geht in deinem Fall mal nicht nur um den Hype) dann würdet ihr diese natürlich teilweise ausgehebeln wenn ihr nativen Code einstreut.
Erichgue Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 86

Win XP/2000/7
TurboPacal 7.0; Delphi 2/5/7; BDS 2006/2010/XE6; C#; MSSQl 2000
BeitragVerfasst: Fr 29.06.07 12:46 
user profile iconRalf Jansen hat folgendes geschrieben:
COM-Komponenten(aka ActiveX) kann man natürlich in allen DOTNET Sprachen benutzen genauso wie man als COM-Komponenten veröffentlichte DOTNET Assemblies in nativen Umgebungen aufrufen kann. Ihr müßt nur darauf achten welche Datentypen über die COM-Schnittstellen ausgetauscht werden.


Ah, das wars! Danke!

Zitat:

Die Frage ist weiterhin warum die Kunden NET verlangen (bei selben Features wie eine native Anwendung).
Wenn es Ihnen insbesondere um die enger geschnürte Security in NET geht ( ich hoffe es geht in deinem Fall mal nicht nur um den Hype) dann würdet ihr diese natürlich teilweise ausgehebeln wenn ihr nativen Code einstreut.


Leider wieß ich es nicht, warum die(!) Kunden .NET wollen.

Ich werde diese Aspekte noch mal mit meiner GL durchgehen.

Melde mich Mo. wieder.

Erstmals vielen Dank!

Gruß

Erich Günthner
Bernhard Geyer
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 721
Erhaltene Danke: 3



BeitragVerfasst: Fr 29.06.07 15:15 
user profile iconErichgue hat folgendes geschrieben:
Würde mich jemand nehmen, würde ich auch gehen.

Sollte aktuell kein Problem sein. Oder willst du nur bei Delphi bleiben?

user profile iconErichgue hat folgendes geschrieben:
Werde dein posting mal an unserern "Softwarebeauftragten" weiterleiten, wenns recht ist?
Aber am besten ohne obige Aussage :-)

user profile iconErichgue hat folgendes geschrieben:
Also du meinst, das ActiveX nicht das beste ist?
Daraus schließe ich auch, das ActiveX in C# nicht geht?

Wurde schon beantwortet.
Erichgue Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 86

Win XP/2000/7
TurboPacal 7.0; Delphi 2/5/7; BDS 2006/2010/XE6; C#; MSSQl 2000
BeitragVerfasst: Fr 29.06.07 20:26 
user profile iconErichgue hat folgendes geschrieben:
Also du meinst, das ActiveX nicht das beste ist?
Daraus schließe ich auch, das ActiveX in C# nicht geht?

Wurde schon beantwortet.[/quote]

Wenn ich das mal zusammenfasse, wäre es besser man nimmt Delphi .NET und gut is.

Gruß

Erich Günthner


Zuletzt bearbeitet von Erichgue am Di 03.07.07 09:30, insgesamt 1-mal bearbeitet
Leuchtturm
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1087

Win Vista, Knoppix, Ubuntu
Delphi 7 Pe, Turbo Delphi, C#(VS 2005 Express), (X)HTML + CSS, bald Assembler
BeitragVerfasst: Fr 29.06.07 21:15 
Vorab: Ich habe noch nicht mit Delphi.net gearbeitet, sondern mir nur ein kleines Tutorial durchgelesen.
Ich würde dir von Delphi.net abraten, weil es noch auf .net1.1 demnächst vllt auf .net2.0 aufstetzt-> Ist also veraltet :wink: Und die VCL.net ist auch nicht so das Wahre.
Wenn du(ihr) mit .net arbeiten müsst dann würde ich euch C# empfehlen.

_________________
Ich bin dafür verantwortlich was ich sage - nicht dafür was du verstehst.
Bernhard Geyer
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 721
Erhaltene Danke: 3



BeitragVerfasst: Fr 29.06.07 21:24 
user profile iconLeuchtturm hat folgendes geschrieben:
Ich würde dir von Delphi.net abraten, weil es noch auf .net1.1 demnächst vllt auf .net2.0 aufstetzt-> Ist also veraltet :wink:

Delphi war immer veraltet (D1 kurz vor Einführung Win95 am Markt, COM+-Support erst 1-2 Jahre verspätet). Letztendlich muß jede Nicht-MS-IDE immer hinterher sein.

user profile iconLeuchtturm hat folgendes geschrieben:
Und die VCL.net ist auch nicht so das Wahre.

Aktuell ja. Aber da mit Avalon/WPF eh alle Karten neu gemischt werden (und alle WinForms-Entwickler um nicht veraltet zu sein alles GUI-Technische neu entwickeln müssen) will ich mal abwarten ob evtl. ein überzeugende VCL.WPF folgt.

user profile iconLeuchtturm hat folgendes geschrieben:
Wenn du(ihr) mit .net arbeiten müsst dann würde ich euch C# empfehlen.

Chrome ist auch eine reine .NET-IDE mit Sprachbasis Pascal. Jedoch sollte man unter .NET auf jedenfall ausreichende C#-Kenntnisse haben.