Bei Microsoft anmelden
Melden Sie sich an, oder erstellen Sie ein Konto.
Hallo,
Wählen Sie ein anderes Konto aus.
Sie haben mehrere Konten.
Wählen Sie das Konto aus, mit dem Sie sich anmelden möchten.

Zusammenfassung

Beim Erstellen einer DLL mit der 64-Bit-Version von Microsoft Visual C++-Compiler und Linker möglicherweise Linker Fehlernummer LNK4197 eine Funktion für den Export mehrmals deklariert wurde.

Problembeschreibung

Die Linker-Ausgabe möglicherweise ähnlich der folgenden:

C:\>link /NOLOGO /def:Sample.def /pdb:Sample.pdb /out:Sample.dll  Sample.objSample.obj : warning LNK4197: export 'DllSample' specified multiple times; using first specification   Creating library Sample.lib and object Sample.exp 

Ursache

Der Linker die Fehlernummer LNK4197 wird generiert, wenn eine Funktion für den Export mehrmals deklariert wurde. Eine Funktion wird für den Export in eine der folgenden Arten deklariert:

  • Die Funktion wird mit __declspec(dllexport) -Schlüsselwort in der C-Quelldatei deklariert:

    __declspec(dllexport) int DllSample() {   return 42;}
  • Die Funktion wird mit einer Moduldefinition deklariert (. DEF)-Datei:

    EXPORTS   DllSample

Dieser Linkerfehler kann häufig auftreten, wenn sowohl das __declspec(dllexport) -Schlüsselwort und. DEF-Datei wird in denselben Funktionsnamen definiert ein. DLL-Projekt.

Fehlerbehebung

Um dieses Verhalten zu beheben, definieren Sie exportierte Funktionen nur einmal das __declspec(dllexport) -Schlüsselwort verwenden oder mithilfe einer. DEF-Datei. Verwenden Sie nicht beide Methoden.

Status

Es handelt sich hierbei um ein beabsichtigtes Verhalten.

Weitere Informationen

Eine Funktion für den Export nur einmal deklarieren kann nicht im Abschnitt "Symptome" dieses Artikels in 32-Bit-Versionen von Microsoft Windows C++ Compiler und Linker beschrieben die Linkerfehler führen. Microsoft empfiehlt jedoch 32-Bit- und 64-Bit-Versionen von Windows C++ Compiler und Linker Funktion exportiert nur einmal definieren.

Benötigen Sie weitere Hilfe?

Möchten Sie weitere Optionen?

Erkunden Sie die Abonnementvorteile, durchsuchen Sie Trainingskurse, erfahren Sie, wie Sie Ihr Gerät schützen und vieles mehr.

In den Communities können Sie Fragen stellen und beantworten, Feedback geben und von Experten mit umfassendem Wissen hören.

War diese Information hilfreich?

Wie zufrieden sind Sie mit der Sprachqualität?
Was hat Ihre Erfahrung beeinflusst?
Wenn Sie auf "Absenden" klicken, wird Ihr Feedback zur Verbesserung von Produkten und Diensten von Microsoft verwendet. Ihr IT-Administrator kann diese Daten sammeln. Datenschutzbestimmungen.

Vielen Dank für Ihr Feedback!

×