Freigeben über


Erstellen und Debuggen von Bibliotheken und ActiveX-Steuerelementen

Nachdem Sie ein Projekt erstellt haben, können Sie es kompilieren und verknüpfen (linken) und anschließend debuggen.

Kompilieren und Verknüpfen des Projekts

Vor dem Kompilieren und Verknüpfen müssen Sie die Projekteinstellungen festlegen. Einige der Einstellungen, die Sie vornehmen müssen, hängen davon ab, ob Sie eine Debug- oder eine Releaseversion des Steuerelements oder der Bibliothek erstellen möchten. Die übliche Vorgehensweise ist, dass Sie so lange Debugversionen Ihres Programms erstellen, bis das Programm fehlerfrei funktioniert, und dann eine Releaseversion erstellen.

So geben Sie an, ob eine Debug- oder eine Releaseversion erstellt werden soll

  1. Klicken Sie im Menü Erstellen auf Aktive Konfiguration festlegen.
  2. Wählen Sie aus, ob Sie eine Debug- oder eine Releaseversion des Steuerelements erstellen möchten.
  3. Wählen Sie OK.

So legen Sie die Projekteinstellungen fest

  1. Klicken Sie im Menü Projekt auf Einstellungen.
  2. Wählen Sie unter Einstellungen für aus, ob Sie eine Debug- oder eine Releaseversion des Programms erstellen möchten.
  3. Klicken Sie auf die Registerkarte C/C++, und nehmen Sie folgende Einstellungen vor:
    • Wählen Sie in der Liste Kategorie den Eintrag Code Generation aus.
    • Wählen Sie in der Liste Aufruf-Konventionen den Eintrag _fastcall aus.
    • Wählen Sie in der Liste Laufzeit-Bibliothek den Eintrag Multithreaded DLL aus.
  4. Klicken Sie auf die Registerkarte Linker, und geben Sie im Textfeld Objekt/Bibliothek-Module eine der folgenden Bibliotheken an:
    • Wenn Sie eine OCX-Datei erstellen möchten, geben Sie die Bibliothek OCXAPI.LIB an, die Sie im Visual FoxPro-Unterverzeichnis ...\Samples\API finden.
    • Wenn Sie eine FLL-Datei erstellen möchten, geben Sie die Bibliothek WINAPIMS.LIB an, die Sie im Visual FoxPro-Unterverzeichnis ...\Samples\API finden.
  5. Deaktvieren Sie Alle Standardbibl. ignorieren.
  6. Wählen Sie OK.

So stellen Sie sicher, dass der Compiler die erforderlichen Dateien finden kann

  1. Klicken Sie im Menü Extras auf Optionen.
  2. Klicken Sie auf die Registerkarte Verzeichnisse.
  3. Wählen Sie in der Liste Verzeichnisse anzeigen den Eintrag Include-Dateien aus.
  4. Klicken Sie in der Symbolleiste Verzeichnisse auf die Schaltfläche Neu.
  5. Fügen Sie das Verzeichnis hinzu, in dem sich Pro_ext.h befindet.
  6. Wählen Sie in der Liste Verzeichnisse anzeigen den Eintrag Bibliothekdateien aus.
  7. Klicken Sie in der Symbolleiste Verzeichnisse auf die Schaltfläche Neu.
  8. Fügen Sie, wenn Sie ein Steuerelement erstellen, die Bibliothek Ocxapi.lib oder, wenn Sie eine FLL-Bibliothek erstellen, die Bibliothek Winapims.lib hinzu. Beide Bibliotheken finden Sie im Visual FoxPro-Unterverzeichnis ...\Samples\API.
  9. Klicken Sie im Dialogfeld Optionen auf OK.

Nachdem Sie die Einstellungen angegeben haben, können Sie Ihr Programm kompilieren und verknüpfen.

So kompilieren und verknüpfen (linken) Sie eine OCX-Datei

  • Klicken Sie im Menü Erstellen auf projname**.ocx erstellen**.

Sobald Sie die OCX-Datei kompiliert und verknüpft haben, registriert Visual C++ das Steuerelement automatisch auf Ihrem Computer. Sollten Sie das Steuerelement aus irgendeinem Grund manuell registrieren müssen, können Sie wie folgt vorgehen.

So registrieren Sie das ActiveX-Steuerelement

  • Wählen Sie im Menü Extras der Microsoft Entwicklungsumgebung den Befehl Steuerelement registrieren.

    - Oder -

  • Deklarieren Sie in Ihrem Programm die DLLRegisterServer( )-Funktion, und rufen sie diese Funktion aus Ihrem Programm auf.

Debuggen eines ActiveX-Steuerelements oder einer FLL-Bibliothek

Das Debuggen des Steuerelements oder der Bibliothek im Zusammenhang einer kompletten Visual FoxPro-Anwendung ist schwieriger als das Debuggen des Steuerelements oder der Bibliothek unabhängig von der Anwendung. Es ist ratsam, ein einfaches Testprogramm zu schreiben, um die Funktionsfähigkeit Ihres Steuerelements oder Ihrer Bibliothek zu testen.

Debuggen mit der Microsoft Entwicklungsumgebung

Microsoft Visual C++, Version 4.0 und höher, bietet eine integrierte Debugumgebung, die das Setzen von Haltepunkten und das schrittweise Durcharbeiten Ihres Codes erheblich erleichtert. Sie können sogar Visual FoxPro aus Visual C++ ausführen.

So starten Sie das Debuggen mit Microsoft Visual C

  1. Klicken Sie im Menü Projekt auf Einstellungen.

  2. Klicken Sie im Dialogfeld Projekteinstellungen auf die Registerkarte Debug.

  3. Geben Sie in das Textfeld Ausführbares Programm für Debugsitzung den Pfad gefolgt von Vfp7.exe ein.

    Geben Sie z. B. Folgendes ein: C:\Programme\Microsoft Visual FoxPro 7\Vfp7.exe.

  4. Wählen Sie OK.

  5. Setzen Sie einen Haltepunkt in Ihrer Bibliothek.

  6. Klicken Sie im Menü Erstellen auf Debug starten. Klicken Sie im Untermenü auf Ausführen.

  7. Wenn Visual Studio die Meldung "Vfp7.exe enthält keine Debuginformationen" anzeigt, klicken Sie auf Ja, um fortzufahren.

Weitere Informationen über das Debuggen in Visual C++ finden Sie in der Dokumentation zu Visual C++.

Debuggen mit anderen Debuggern

Sie sollten ein Steuerelement oder eine Bibliothek mit jedem Debugger debuggen können, der eine INT 3-Anweisung (_BreakPoint( )) korrekt verarbeiten kann, die in Ihr Programm eingebettet ist. Sie können jeden Debugger für symbolisches Debuggen verwenden, solange der Debugger Folgendes leistet:

  • Erstellen einer Symboltabelle aus einer Mapdatei.
  • Laden der Symboltabelle unabhängig vom Programm.
  • Anordnen der Symbole an einer neuen Adresse.

So debuggen Sie eine Bibliothek

  1. Fügen Sie an der Position, an der das Debuggen beginnen soll, einen _BreakPoint( )-Aufruf zu der Routine hinzu.

  2. Kompilieren und verknüpfen (linken) Sie das Steuerelement oder die Bibliothek.

  3. Rufen Sie Ihren Debugger auf.

  4. Wenn Ihr Debugger Symbole unterstützt, laden Sie die Symboltabelle für Ihre Bibliothek.

  5. Starten Sie Visual FoxPro.

  6. Rufen Sie Ihre Bibliotheksroutine aus Visual FoxPro auf.

  7. Passen Sie, sobald der Haltepunkt erreicht ist, die Symbolbasis so an, dass Ihre Symbole an die Position gelangen, an die die Bibliothek geladen wurde.

  8. Erhöhen Sie den Befehlszeiger (IP, Instruction Pointer) um 1, um die INT 3-Anweisung zu überspringen.

  9. Fahren Sie mit dem Debuggen so fort wie mit einem normalen Programm.

    Anmerkung   Haltepunkte, die Sie für Ihren Debugger gesetzt haben, sollten Sie immer löschen, bevor Sie Ihr Produkt für den Vertrieb freigeben.

Siehe auch

Verwalten des Arbeitsspeichers | Zugriff auf Visual FoxPro-Variablen und -Felder | Zugreifen auf die Visual FoxPro-API | Erweitern von Visual FoxPro mit externen Bibliotheken | Rückgabe eines Wertes an Visual FoxPro