Entlasten Sie eine COM-Steuerung, wenn in VB6 IDE arbeiten

stimmen
31

Ein Teil meiner täglichen Arbeit ist die Aufrechterhaltung und Erweiterung Vermächtnis VB6-Anwendungen. Ein gemeinsamer Motor wird in C / C ++ geschrieben und VB6 verwendet diese Funktionen, um die Leistung zu verbessern.

Wenn es um die asynchrone Programmierung kommt, ist eine C-Schnittstelle nicht genug, und wir setzen auf COM-Ereignisse zu VB6 Feuer steuert.

Mein Problem ist, dass, wenn ich die Kontrolle in VB6, VB lädt diese Steuerung im Speicher zu registrieren und es nicht entladen, bis ich die VB6 IDE beenden. Da die Steuerung die ganze Zeit geladen wird, bin ich nicht in der Lage es in VC6 neu kompilieren, da die DLL-Datei ist gesperrt.

Eine Lösung fand ich nicht die Kontrolle in VB zu ermöglichen , aber die Verwendung CreateObject()mit dem vollständigen Namen meiner Kontrolle. Das Problem ist dann, dass ich meine Kontrolle als Objekt erklären muss , weil VB6 nichts von der Schnittstelle weiß ich verwende , und ich habe keinen Zugriff auf IntelliSense, die ein Schmerz ist.

Jede Idee, wie ich kann VB6 sagen Kontrollen zu entladen nach dem Beenden der Anwendung oder direkt in der IDE?

Veröffentlicht am 02/08/2008 um 12:52
quelle vom benutzer
In anderen Sprachen...                            


1 antworten

stimmen
27

Ich bin mir ziemlich sicher, dass es keine gute Möglichkeit, VB6 zu zwingen, die Kontrolle zu entladen.

Hier ist , was ich tun ... statt Visual C und Visual Basic Side-by-Side, laufen VB6 laufen unter VC:

  1. Laden Sie VC
  2. Öffnen Sie das Projekt mit Ihrem COM-Objekte
  3. Bearbeiten, ändern usw.
  4. In VC, stellen Sie den Output Executable VB6.EXE mit entsprechenden Befehlszeilenargumenten, um den VB6-Arbeitsbereich zu laden
  5. Nun drücken Sie einfach F5, um die VB6 IDE und laden Sie Ihre VB6 Projekt zu starten
  6. Wenn Sie wieder den COM-Code zu ändern, Ausgang VB6.EXE, Ihre Änderungen vorzunehmen, und drücken Sie erneut F5. Solange Sie Ihren Arbeitsbereich VB6 sparen erinnern, was Fenster Sie hatte offen und alle Projekteinstellungen.

Die Vorteile dieser Methode:

  • Sie können Haltepunkte in dem COM-Objekt festgelegt und debuggen es eine vollständige Quelle Debugger
  • Sie können zur gleichen Zeit in C und VB glücklich debuggen
  • Jedes Mal, wenn VB6 ist es immer läuft, hat die neueste Version des COM-DLLs
Beantwortet am 20/08/2008 um 04:58
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more