OCX bzw. ActiveX Steuerelement mit C# entwickeln

23/02/2008 - 14:52 von novella75 | Report spam
Hallo,

mit C# lassen sich meines Wissens nach ActiveX Controls für den IE
entwickeln.

Nun habe ich einige C# Controls geschrieben, die ich in anderen
Programmen (die eine OCX Einbindung unterstützen) nutzen möchte.

Leider habe ich bisher darüber keine Informationen gefunden, außer das
dies scheinbar nicht geht.

Was ich weiß, ist das bestimmte Interfaces/Schnittstellen unterstützt
werden müssen, um ein Control (dll) als OLE oder ActiveX Steuerelement
zu qualifizieren.

Welche Möglichkeiten habe ich?
- Genügt es, diese Interfaces in meinem Control zu implementieren,
oder ist das ein Holzweg?
- Muss ich ein MFC ActiveX Control schreiben, um dort meine C#
Controls einzubauen?
Da ich von MFC absolut keine Ahnung habe, wie würde so etwas gehen,
gibt es da Beispiele?

Fragen über Fragen - vielleicht weiß ja jemand etwas dazu.

Vielen Dank!
 

Lesen sie die antworten

#1 Thomas Scheidegger
23/02/2008 - 16:15 | Warnen spam
Hallo

mit C# ...ActiveX Controls für den IE entwickeln.



.NET COM-Interop war für einige wenige Szenarien gedacht,
wo vorübergehend ein weiterer Einsatz von vorhandener COM-Infrastruktur Sinn
macht.
Für neues sollte man aber stets zuerst reine managed Lösungen anstreben.

in anderen Programmen (die eine OCX Einbindung unterstützen)



supportet als Host ist da offiziell nur MFC und IE:
http://support.microsoft.com/kb/311334/en-us

Ich persönlich sehe C# für ActiveX im IE als wenig sinnvoll an.
Wenn schon, dann nimmt man für solche klassische Lösungen besser nur
ATL/MFC.
Oder ggf demnàchst halt die neue Silverlight 2.0 -Schiene.
Wer es aber gleich ganz richtig machen will,
der sollte solche Browser-basierende Lösungen vergessen
und gleich einen .NET Smartclient (Forms/WPF) schreiben.


Muss ich ein MFC ActiveX Control schreiben, um dort meine C# Controls
einzubauen?



nein, C# alleine genügt eigentlich für in IE/MFC Hosts/Container.
<URL:http://samples.gotdotnet.com/quicks...g.aspx>
<URL:http://www.15seconds.com/issue/030610.htm>
<URL:http://www.codeproject.com/KB/miscc...s.aspx>



Thomas Scheidegger - 'NETMaster'
http://www.cetus-links.org/oo_dotnet.html - http://dnetmaster.net/

Ähnliche fragen