Warum wird beim Kompilieren einer VB6-App ein Ereignis ausgelöst?

Ich versuche, eine VB6-Anwendung zu kompilieren, aber sie schlägt mit dem Fehler "Laufzeitfehler '91': Objektvariable oder mit nicht gesetzter Blockvariable" fehl. Es stellt sich heraus, dass das Resize-Ereignis eines Benutzersteuerelements beim Kompilieren und Aufrufen von Code ausgelöst wird, der versucht, auf ein Objekt zuzugreifen, das noch nicht instanziiert wurde.

Warum wird ein Ereignis während der Kompilierung ausgelöst und kann es auf irgendeine Weise gestoppt werden?

Bearbeiten: Ich hatte hier einen Code, der aber nicht relevant ist. Das Problem resultiert aus der Tatsache, dass UserControl-Code (nämlich die Ereignisse Initialize, ReadProperties, Resize und WriteProperties) zu unerwarteten Zeiten ausgeführt werden kann. Wenn sich der Code in diesen Ereignissen auf anderen Code stützt, um eine seiner Datenstrukturen zu initialisieren, besteht eine gute Chance, dass er fehlschlägt, da dieser Initialisierungscode möglicherweise nicht ausgeführt wurde. Besonders beim Kompilieren, wenn nichts ausgeführt werden soll! Ich würde das einen Fehler nennen, aber ich bin sicher, dass Microsoft es irgendwie rationalisieren kann.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage