PDA

Vollständige Version anzeigen : Nachfolger für MSComctlLib


Stefan734
07.10.2009, 19:45
Hi,

ich benötige mal wieder ein Treeview, plane aber bereits den Umstieg auf Windows 7 64bit...

Auf einer MS-Seite habe ich gelesen, dass der Mainsupport für diese ActiveX-Bibliothek schon vor langer Zeit ausgelaufen ist.

Gibt es bereits einen Nachfolger oder setzt ihr alle auch noch auf diese - wenn auch gelegentlich aktualisierte - auslaufende Bibliothek?

J_Eilers
08.10.2009, 06:26
Moin Stefan,

ganz ehrlich kann ich mir nicht vorstellen, dass das OCX rausfliegt. Kannst du den Link mal posten? Ich weiß nicht, wieviele Programme mit dem MSComCtl oder auch der älteren ComCtl32.OCX arbeiten, aber das würde vermutlich zu sehr viel unnützer Arbeit führen.

Stefan734
08.10.2009, 19:10
Hi Jan,

ich habe den Hinweis bei MS (http://support.microsoft.com/default.aspx?scid=kb;de;896559) sehr schnell gelesen und daraus meine Schlussfolgerung gezogen...

OK, in der Erklärung zum Support (http://msdn.microsoft.com/de-de/vbrun/ms788708.aspx) steht es etwas genauer, beruhigt aber nicht wirklich.

Diese alten Controls unterstützen ja keine Styles, alle anderen Controls aus dem Office 2002+ schon. Irgendwann wird es Zeit alle Controls aus einem Guss anzubieten. Diesen Schritt würde ich jetzt gerne gehen.

Die Linie vom MS ist nun halt dotNet. Auf die schnelle habe ich aber keine Infos zu dotNet und Office 2010 gefunden.

Gibt es eine neue Bibliothek mit angepassten Controls, wenn ich auf Abwärtskompatibilität keinen Wert lege?

J_Eilers
09.10.2009, 07:31
Ich kanns nur für .Net sagen, da sind die Steuerelement aus den ComCtls inzwischen Klassen von System.Windows.Forms und werden dort auch weiter bestehen bleiben.

Vielleicht verwechselst du etwas. VB6 wird nicht mehr weiter gefördert. Die MSComCtls stehen ganz klar in der Liste der "Unterstützte Laufzeitdateien mit Support für die Wiederverteilung mit Ihrer Anwendung". Du brauchst die Controls um VB6 zum Laufen zu bekommen:

Die folgenden Dateien sind nötig, um Visual Basic 6.0 Anwendungen in lokalisierten Versionen von Windows Vista ablaufen zu lassen. Sie sind unterstützt, werden aber nicht mit Vista ausgeliefert! Diese Dateien müssen Sie selbst mit Ihrer Anwendung weiterverteilen.

Wie sich das mit der neuen Office-Version verhält kann ich dir leider auch nicht sagen.

Sascha Trowitzsch
09.10.2009, 11:26
So ganz verstehe ich das Problem nicht:
Unter Win7 x64 laufen doch auch 32bit-Programme. :confused:
Wie Office 2007 eben eins ist.
Und in einem 32bit-Programm kann man auch kein 64bit-OCX verwenden.
Das alte mcsomctl.ocx kommt also auch da weiter zum Einsatz.

Anders sieht es mit Office 2010 aus, das zum ersten mal alternativ auch als 64bit-Version zu erwerben sein wird. (Obwohl MS bisher empfiehlt, auch unter x64 das 32bit-O2010 zu verwenden. ;))
Hier muss man natürlich 64bit-Controls nehmen, die in der aktuellen Beta noch nicht vorhanden sind.
MS hat jedoch klargemacht, dass die wichtigsten OCXe nach 64bit portiert werden und zur Public Beta zur Verfügung stehen sollen.
Genauere Planungen dazu sind nicht bekannt, aber so, wie ich das in einem LiveMeeting verstanden habe, werden wohl tatsächlich nur mscomctl.ocx und fm20.dll (MSForms) in Betracht gezogen.
Die ganzen anderen VB6-Controls (richtxt, mscomm, flexgrids, etc.) bleiben wohl außen vor.

Ciao, Sascha

PS: Kann mir mal einer einen Grund nennen, warum alle Welt neuerdings auf natives x64 umstellen will?
Was hat man davon? Braucht ihr wirklich soviel Speicher? Oder ist es einfach nur chic?
Mir ist das zu verfrüht, weil man allenthalben von nicht kompatiblen Programmen hört...

raist10
09.10.2009, 12:06
Mir ist das zu verfrüht, weil man allenthalben von nicht kompatiblen Programmen hört...


Was noch sehr dezent formuliert ist. Gerade maschinennah programmierte Anwendungen dürften ein echtes Problem haben.

Habe selber eine 64-bit Vista drauf und was darauf alles so nicht läuft ist wirklich zum Kinder kriegen. Habe bloss damals dummerweise nicht drauf geachtet beim Kauf ... der Quad-Core-Prozessor wahr wohl so verführerisch das ich auf solche Kleinigkeiten nicht mehr geachtet habe. ^^

Gruß

Rainer

Josef P.
09.10.2009, 12:09
[zu 64bit-OS]
Braucht ihr wirklich soviel Speicher?
Ja. :)

Habe allerdings mit Win7-64bit und Office 2007 überhaupt keine Probleme. Das läuft tadellos im 32-bit-Modus.

Sascha Trowitzsch
09.10.2009, 13:21
Ja, natürlich braucht man unter x64 viel Speicher. ;)
Die ganzen Null-Bits im RAM müssen ja zu was gut sein.

Ciao, Sascha

Stefan734
09.10.2009, 21:07
upps, eine lebhafte Diskussion...

aber zurück zum Thema - mir geht es mehr um die Optik und die ist in dem ocx ohne Themes einfach veraltet - auch unter 32bit. Ist das Office 2010 nicht selbst in WPF realisiert oder war es das Studio Studio 2010.

Aber egal, die Zeit für diese Controls ist irgendwie vorbei... Gibt es auch in der Officewelt einen vernünftigen Ersatz?

Stefan734
29.10.2009, 17:49
die Hoffnung stirbt also mal wieder als letztes :)

Dann gehe ich mal weiter davon aus, dass es eines Tages auch MS auffällt und Sie sich von den veralteten und nicht weiter gepflegten Controls verabschieden - sprich ein neues Set Access-tauglich anbietet oder gleich in integriert.

Wenn ich schon mal beim Wünschen bin, WPF wäre mir für die Oberflächengestaltung am liebsten:D

Schade

Sascha Trowitzsch
30.10.2009, 11:33
So ganz kann ich dir nicht folgen...

Zunächst mal: O2010 ist nicht mit WPF programmiert.
Und das wird auch so schnell nicht passieren. Ein solches Redesign wäre ein irrsinnig aufwändiges Unterfangen, das sich für MS niemals rechnen würde.
Im Gegenteil: In A2010 findet sich immer noch massenhaft Code aus A97 - etwa in Gestalt der ganzen Assistenten. Man muss die nur mal anwerfen und sich die altbackenen und zu kleinen Dialoge ansehen.
MS beschränkt sich (leider) von Version zu Version in erster Linie darauf, neue Features einzubauen. Für A2010 heißt das: Access ins Web (bzw. auf Sharepoint). Aussehen tut's so:
http://channel9.msdn.com/shows/Access/Microsoft-Access-2010-Demo
Das Video kann man sich ruhig mal ansehen.

Was für dich ein "modernes" Treeview-Theme ist, kann ich mir nicht wirklich vorstellen.
Soll das diese bescheuerten Pfeilchen haben, wie der Explorer in Vista?
(In Win7 habe ich erstmal auf Classic Design umgestellt und habe nun endlich wieder die "Plus-Zeichen" für die Nodes, mit denen sich IMHO wesentlich effektiver navigieren lässt.)
Wenn ich ein Treeview unter VS2008 in ein WinForm einbaue, inwiefern sieht das dann anders aus, als das mscomctl.ocx-Treeview? Das sind doch marginale Änderungen! Die Pluszeichen sind ein bisschen 3D und der Rest eher flat style, sowie der Rahmen halt je nach Theme (=blau statt schwarz).

Wenn du Treeviews mit anderem Aussehen willst, dann empfehle ich dir eines von vbAccelerator:
http://www.vbaccelerator.com/home/VB/Code/Controls/TreeView/index.asp
Die kannst du immerhin, da im Quellcode, selbst weiterentwickeln - z.B. Datenbindung vorsehen.

Die ganze Richtung von MS, das UI-Design immer mehr dem Web anzupassen, gefällt mir überhaupt nicht.
Mir ist etwa die gute alte Systemsteuerung von A2000 mit den Dialogfenstern immer noch lieber, als diese ganzen webseitenartigen Übersichten von Vista und W7. Wenn Modernität auf Kosten von Effizienz geht, dann erkenne ich darin keinen Sinn.

Ciao, Sascha

Stefan734
30.10.2009, 12:40
Hi Sascha,

Funktionalität ist ein absolutes must have, aber die Zeiten in denen der Rest egal ist, sind m.E. zum Glück vorbei. Heute ist eine Koexistenz von Funktion und Optik gefordert und das zunehmend mehr in Richtung Optik. Mit Effizienz - ich denke Du meinst Entwicklungseffizienz - hat das für mich nicht so viel zu tun. Klar ist das für Entwickler schwer - für mich auch - aber diese Entwicklung werden wir nicht aufhalten.

Beim Tree fällt mir z.B. noch die fehlende Transparenz für den Hintergrund ein oder die fehlende Unterstützung für PNG in der dazugehörenden ImageList. Floatingfähige Container fehlen ganz (Stichwort 3 Spaltenlayout). Diese Controls sind einfach nicht mehr aus einem Guss und werden - das ist nicht gut - auch nicht mehr weiterentwickelt. D.h. in 3 Jahren nutze ich diese dann immer noch?!

Und danke für den Videohinweis. Ich finde den Weg in die Webtechnik richtig und gut. Aber meine Wurzeln liegen auch eher dort ;)

Bei meinem nächsten Projekt werde ich mich wohl eher an dotNet versuchen und die Oberfläche natürlich in WPF. Ist dann auch Multitouch-Surface fähig. Bis dahin kämpfe ich aber weiter in und mit Access ;)

Aber wie immer im Leben liegt die Wahrheit in der Mitte und vieles ist Geschmackssache. Lass uns bei Gelegenheit darüber weiter philosophieren...