Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

(VB 6) Listbox - Begrenzte Zahl an Einträgen

Mitglied: 17735

17735 (Level 2)

01.10.2007, aktualisiert 02.10.2007, 5641 Aufrufe, 4 Kommentare

Hallo,

ein von mir geschriebenes Programm in VB6 berechnet alle Primzahlen bis zu einer vom Benutzer vorgegebenen oberen Grenze. Dabei werden alle Primzahlen einer Listbox hinzugefügt:

lstPrimzahlen.AddItem Primzahl

Anschließend, wenn die Berechnung fertig ist, möchte ich in einem Label ausgeben, wie viele Primzahlen gefunden wurden:

lblPrimzahlenCounter.Caption = lstPrimzahlen.ListCount & " gefundene Primzahlen"

Dies funktioniert soweit auch ganz gut, wenn man als obere Grenze eine Zahl kleiner als 386.000 eintippt. Wenn die Zahl größer ist, scheint das berechnen noch zu funktionieren, und die Primzahlen landen auch (anscheinend) vollständig in der Listbox, im Label steht dann allerdings eine negative Zahl, z. B.:

-32697 gefundene Primzaheln

Was soll das bzw. wie kann ich das beheben? Hat eine Listbox in VB vielleicht eine begrenzte Zahl an Einträgen? Habe dazu bisher nichts gefunden.

Gruß,
Ahnenforscher
Mitglied: AndreasHoster
01.10.2007 um 19:07 Uhr
Ich finde, der Fehler klingt sehr nach falscher Interpretation von signed und unsigned Integern.

Eine unsigned Integer hat einen Wertebereich von 0 bis 65535 (16bit) und eine signed Integer geht von -32768 bis 32765, wobei das höchstwertige Bit bestimmt, ob positiv oder negativ, d.h. wenn die Listbox mehr als 32765 Elemente enthält und eine unsigned Integer zurückgibt (was auch Sinn macht, da es ja nicht weniger als 0 Einträge geben kann, aber die implizite Wandlung in einen String von signed Integern ausgeht, dann kann sowas schon passieren.

Es gibt doch sicherlich in VB6 Funktionen, die explizit Zahlen in Strings umwandeln und auch mit unsigned Integern zurechtkommen.

Nicht auszuschließen ist aber natürlich auch die Variante, daß VB6 tatsächlich nur 32765 Einträge in einer Listbox verkraftet. Habe kein VB6, kann es leider nicht ausprobieren. Aber mit einer Zählschleife von 1 bis 40000 und das Ergebnis in eine Listbox reinschreiben könnte man das recht einfach testen.
Bitte warten ..
Mitglied: 17735
01.10.2007 um 19:16 Uhr
Hallo,

also ich kenne die Funktion CStr() die eine Variable in den Variablentyp String umwandelt - und diese wende ich auch an. Leider bringt das mit und ohne Umwandlung keinen Unterschied, wobei deine Begründung am Anfang ziemlich logisch scheint, da der Fehler wirklich in diesem Bereich auftritt.

Gruß,
Ahnenforscher
Bitte warten ..
Mitglied: 17735
01.10.2007 um 19:40 Uhr
Hi,

also ich hab da gerade was gefunden:

Aufgrund eines Bugs in der VB-Listbox ist es nicht möglich, auf mehr als ca. 32000 Einträge zuzugreifen, da die ListCount-Eigenschaft den Datentyp Integer hat. Ab dieser Grenze ist der Listcount-Wert blöderweise negativ! Unter Windows9x ist es noch nichteinmal möglich, überhaupt mehr als 32000 Einträge einzufügen! Unter Win2000 kann man sie zwar einfügen, aber nicht drauf zugreifen.

(Zitat von http://www.activevb.de/tipps/vb6tipps/tipp0469.html)

Schade!

Gruß,
Ahnenforscher
Bitte warten ..
Mitglied: 17735
02.10.2007 um 17:03 Uhr
Hat jemand eine Idee, wie man das Problem umgehen kann? Vielleicht gibt es eine gleichwertige Alternative zur Listbox in VB6?

Gruß,
Ahnenforscher
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Powershell Auswahlgruppen für Listbox Einträge

gelöst Frage von BuggerBatch & Shell4 Kommentare

Hallo zusammen, ist es möglich, eine Variable mit mehreren Einträgen zu haben und diese in der Listbox auszuwählen? Also ...

Batch & Shell

Powershell Button um Listbox einträge auszuwählen

gelöst Frage von BuggerBatch & Shell4 Kommentare

Hallo, ist es möglich Einträge in einer Listbox per extra Button auszuwählen? In einer langen Liste hätte man so ...

Visual Studio

VB - Mail Attachments - Anhang mittels Listbox

gelöst Frage von KurdirektorVisual Studio4 Kommentare

Hallo, ich habe folgenden Code geschrieben Dieser funktioniert soweit auch ganz gut aber leider nur dann wenn auch alle ...

VB for Applications

Suche mittels Eintrag in Listbox und einer gewählten Checkbox

Frage von aivilonVB for Applications2 Kommentare

Moin Admins Folgendes Szenario: Bei mir im Geschäft verwendet die Vermittlungshotline ein wirklich abstruses, riesiges Excel als Telefonliste. Es ...

Neue Wissensbeiträge
Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 1 TagWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Sicherheit
Microsoft und Skype: Sicherheit
Information von kgborn vor 1 TagSicherheit

Die Tage gab es ja einige Berichte zur Sicherheit des Skype-Updaters. Der Updater von Skype läuft unter dem Konto ...

Datenschutz

Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10

Information von Penny.Cilin vor 2 TagenDatenschutz8 Kommentare

Hallo, passend zum Thema Ablösung LIMUX in München ein Beitrag bei Heise (siehe Link folgend). Behörden ignorieren Sicherheitsbedenken gegenüber ...

Sicherheit
Information Security Hub Munich airport
Information von brammer vor 2 TagenSicherheit

Hallo, Neues Center für Cyber Kriminalität am Münchener Flughafen brammer

Heiß diskutierte Inhalte
DSL, VDSL
Mindestgeschwindigkeiten DSL Telekom
Frage von justlukasDSL, VDSL13 Kommentare

Hallo zusammen, Seit diesem Jahr habe ich Verständnisprobleme mit dem Verhalten der Telekom. Wir haben seit einem Jahr VDSL ...

Switche und Hubs
LANCOM-Switch: Probleme (no link) mit SFP-Modulen?
Frage von THETOBSwitche und Hubs10 Kommentare

Hi zusammen, ich habe folgendes Problem: Und zwar habe ich an einem Standort drei Switche verbaut - LANCOM GS-2326P+, ...

Firewall
RB2011 Firewall Rule eine bestimmte Mac oder IP Adresse nicht zu blockieren
Frage von lightmanFirewall10 Kommentare

Hallo liebes Forum mit ihren Spezialisten. Ich habe meine Firewall so konfiguriert das kein Endgerät ohne meine Speziellen Erlaubnis ...

Humor (lol)
Was könnte man mit einem Server machen? Idee gesucht
Frage von 2SeitenHumor (lol)8 Kommentare

Hey Zusammen Ich habe einen alten HP G2 Rackserver zu Hause rumliegen. 28GB Ram, 1xAMD Prozi mit etwa 2GHz. ...