| |
Allgemeine DiskussionenLimitation in VB6 | | | Autor: Hakiri | Datum: 23.11.11 09:18 |
| Hallo,
bekanntlich ist VB6 in einigen Bereichen etwas limitiert, was grundsätzlich aber keine Hürde darstellen dürfte. Lediglich die Menge der 'Identifiers' *) ist auf ca 32.000 begrenzt. Wenn man hier an die Grenzen kommt, muss man Umstrukturierungen vornehmen.
Nun stelle ich zur Diskussion, ob jmd diese Grenzen schon kennen gelernt hat, und was man tun kann, wenn auch alle neue Strukturierungen nicht weiter helfen, oder dadruch erst mal nur Zeit gewonnen wurde. Hilft z.B. das Auslagern in eine ActiveX?
Hat jmd oder kennt jmd ggf ein Tool, mit dem man die Identifiers zählen kann, um mal ein Gefühl zu bekommen, wie dicht man an der Grenze ist?
*) Identifiers:
Bezeichner, d.h. nicht-reservierte Schlüsselwörter, die unter anderem Formulare, Steuerelemente, Module, Variablen, Konstanten, Prozeduren, Funktionen und Objekte umfassen.
mehr Infos auch hier:
http://www.xlam.ch/xlimits/visualbasic.htm
Martin Domian
CioTec Ltd
F37 Waterfront Studios 1 Dock Road
London E16 1AH United Kingdom
Tel.: +44 7810 255482
Mail: MDomian@ciotec.de
URL: http://www.ciotec.de
UTR 64446 15259 (Unique Taxpayer Reference) Company No 10914665
| |
Re: Limitation in VB6 | | | Autor: Blackbox | Datum: 25.11.11 19:45 |
| Hi,
die Menge der Identifiers ist bei VB schon immer bei 255. Solltest Du nähere Erkenntnisse die zu deiner Zahl führen haben, so sind wir ganz Ohr!
Und solltest Du wirklich eine Ahnung davon haben, was Du anfrägst - ich bezweifle das nämlich - so antworte, für was Du das brauchst. | |
Re: Limitation in VB6 | | | Autor: GBO | Datum: 25.11.11 20:15 |
| Beides irgendwie richtig.
Also ich kenne 3 "Grenzen" an die ich schon gestoßen bin.
Das eine sind die 255 Controls auf einer Form. Da hilft indizieren der Controls, wobei das nicht immer geht. Ein Button ist schließlich kein Label, ein Label keine Textbox usw. Je unterschiedlichem Control brauchts also minimum schonmal einen Namen.
Wie man die in der Controlsauflistung der Form zählen kann sollte wohl klar sein ^^
Ein anderes Problem sind ggf Events, wenn man die in Klassen programmieren will wirds mit indizierten Controls auch schwierig.
Der zweite Punkt ist, dass der Maschinencode einer Sub etc max 32KB gross sein darf (<- vielleicht sind es auch 64KB, jedenfalls gibts da eine Grenze). Codeteile rausnehmen, in Unterfunktionen auslagern und die aufrufen - die Lösung ist auch nicht schwer.
Die dritte Grenze sind die 32000 Namen im globalen Namensraum. Dazu zählen Controlnamen von Form, Formnamen, Public Subs, Function ..., Public Konstanten, Variablen, Enums ... eben alles was Public ist.
Da hilft es Teile in DLLs auszulagern. | |
Re: Limitation in VB6 | | | Autor: Hakiri | Datum: 27.11.11 09:32 |
| Hallo GBO!
Ja, es gibt zahlreiche Limitation (siehe Links im Startbeitrag), die kann man alle mit einfachen Mittelm umgehen, und selbst wenn man so irre ist und mehr als 255 Controls auf der Form haben muss, kann man das mit Indexen lösen, und dann wird einem sogar das zählen abgenommen
Worauf es aber ankommt ist das was Du als drittes schreibst.
Der globalen Namensraum, genau das sind die Identifiers, und da wüsste ich gerne mit unseren Projekten, wo wir da stehen. Man könnte ein kleines Programm schreiben, welches die zugehörigen Dateien durchparst, aber vielleicht gibt es da etwas einfacheres, denn wenn VB diese Grenze hat, dann wird es auch irgendwie wissen, wie der Stand ist, oder jmd hat das Rad dafür vielleicht schon erfunden.
Wir haben einiges AdOns für VB geschrieben, vielleicht findet man da was im internen Namespace.
Martin
Martin Domian
CioTec Ltd
F37 Waterfront Studios 1 Dock Road
London E16 1AH United Kingdom
Tel.: +44 7810 255482
Mail: MDomian@ciotec.de
URL: http://www.ciotec.de
UTR 64446 15259 (Unique Taxpayer Reference) Company No 10914665
| |
Re: Limitation in VB6 | | | Autor: Hakiri | Datum: 02.12.11 07:53 |
| Guten Morgen Dirk!
Ja klasse!
Das Tool ist zwar nicht gerade ein Schnäppchen, aber genau etwas, was mir ein wneig Arbeit und Sorge abnehmen könnte und die Infos übermittelt, die ich brauche.
Danke, auf so etwas hatte ich gehofft.
Es ist sicher auch für andere hilfreich.
Mir sind mehrere Firmen bekannt, die immer noch haufenweise Funktionen in VB6 einbauen und deren Produkte weiter wachsen und sicher noch lange im Markt bleiben.
Martin Domian
CioTec Ltd
F37 Waterfront Studios 1 Dock Road
London E16 1AH United Kingdom
Tel.: +44 7810 255482
Mail: MDomian@ciotec.de
URL: http://www.ciotec.de
UTR 64446 15259 (Unique Taxpayer Reference) Company No 10914665
| |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
Neu! sevCoolbar 3.0
Professionelle Toolbars im modernen Design!
Mit sevCoolbar erstellen Sie in wenigen Minuten ansprechende und moderne Toolbars und passen diese optimal an das Layout Ihrer Anwendung an (inkl. große Symbolbibliothek) - für VB und MS-Access Weitere InfosTipp des Monats Access-Tools Vol.1
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|