ich habe exakt dasselbe Problem wie Du.
Ich habe es in einem VB.net 2005 "WindowsApplication"-Projekt eingebaut.
Wenn ich das Programm aus der Entwicklungsumgebung heraus starte, wird das Flexgrid angezeigt.
Wenn ich die compilierte EXE starte, gibt es keine Fehlermeldungen, alle anderen Controls werden angezeigt, nur das Flexgrid fehlt.
Post by unknownHallo NG,
um unsere in die Jahre gekommenen VB6 Komponenten auf .NET umzustellen, habe
ich versucht diese in .NET einzubinden. Leider sto??en wir hier unter 64 bit
Systemen auf Probleme. In vielen VB6 Komponenten ist das FlexGrid enthalten.
Das FlexGrid wird in einer .NET Umgebung unter 64 bit nicht angezeigt.
Das Auw??hlen der Konfiguration x86 f??hrte leider auch nicht zum Erfolg.
Interessanterweise funktioniert das Ganze, wenn die Start exe eine VB6 exe ist
(Hierf??r habe ich ein Interop geschrieben, der einfach App.Run() aufruft,
diesen rufe ich dann in VB6 auf).
Hat jemand eine Idee, woran dieses Verhalten liegen k??nnte, oder was ich
noch versuchen k??nnte?
Danke schonmal im Voraus.
Gru??,
Martin B??rkle
Post by Thomas ScheideggerHallo Martin
naja, die 10 Jahre waren eigentlich genug f??r 100% .NET.
solche vielschichtige Unget??me nochmals weiter in Win-Forms zu hosten
kann immer nur eine wacklige Not-??bergangsl??sung sein.
Frage: VS2008 oder 2010 (welche Edition?) - .NET 3.x oder 4.0?
Die .NET App (Projekt der EXE) muss garantiert auf x86 (32-Bit) stehen.
(Vorsicht, es muss auch die richtige Einstellung sein, es gibt ggf mehrere
"x86"-Settings!)
Als Schnelltest w??rde ich rasch ein
neues minimal-WinForms Projekt erstellen
und dort direkt mal jene FlexGrid-OCX auf ein Form platzieren.
Damit kann man den Fehler evtl. besser eingrenzen (debuggen).
Diese VB-OCXe sind ??brigens KillBit-verseucht,
viele Hotfixes/Rollups /Security k??nnten klemmen.
(lies MS KBs)
--
Thomas Scheidegger - 'NETMaster'
http://dnetmaster.net/
Post by Martin BürkleHallo Thomas,
danke erstmal f??r die schnelle Antwort.
Das Testprojekt habe ich bereits geschrieben. Es macht keinen Unterschied ob
ich es mit VS 2008 oder VS2010 erstelle. Auch die ??nderung des .NET
Frameworks bringt nichts.
Bei dem Testprojekt wird das OCX selbst im Designer nicht dargestellt.
Hast Du noch weitere Ideen? Bin f??r jede Anregung dankbar.
Danke schonmal im Voraus.
Gru??,
Martin
Post by Thomas Scheideggerbitte detailiert!
Also zB, du kannst das OCX zwar im Designer auf das WinForm platzieren,
wird dann aber 'optisch' nicht ausgef??llt,
sondern bloss dessen Rahmen erscheint?
Weiteres nebenbei,
"You must have a design-time license to use Visual Basic 6.0 ActiveX
controls"
http://support.microsoft.com/kb/318597
Unter Vista/7 sollte man es ggf auch mal mit Vollberechtigung
(User als Admin, ohne UAC!) versuchen...
Auch sollltest du wie gesagt pr??fen,
welche FlexGrid Version der vielen VB6/OCX Rollups du hast,
wegen den KillBits, zB
http://support.microsoft.com/kb/957924
--
Thomas Scheidegger - 'NETMaster'
http://dnetmaster.net/
Post by Martin BürkleHallo Thomas,
das FlexGrid wird "nur" nicht dargestellt. Ich kann auf Properties zugreifen
und diese auch zu Laufzeit auslesen. Es erscheint auch keinerlei Rahmen. Es
ist, als ob es Invisible geschaltet w??re (Visible steht aber auf true). Es
ist also auch kein Rahmen sichtbar.
Die Lizenz f??r das Grid habe ich eingespielt, und mein Visual Studio l??uft
unter Adminrechten.
Den Hinweis mit den Killbits habe ich mir auch angesehen. In Postings im
Netz ist es allerdings so beschrieben, dass das Flexgrid ??berhaupt nicht mehr
funktioniert. Das ist bei mir ja nicht der Fall, weil es in VB6 direkt
richtig funktioniert.
Danke nochmals f??r Deine Hilfe.
Gru??,
Martin