Logg på med Microsoft
Logg på, eller opprett en konto.
Hei,
Velg en annen konto.
Du har flere kontoer
Velg kontoen du vil logge på med.

Microsofts interne støtteinformasjon

Feil #: 101959 (Visual Studio)

Sammendrag

Når du bygger en DLL-fil ved hjelp av 64-biters versjonen av Microsoft Visual C++ kompilatoren og Linker, kan du få Linker feilnummer LNK4197 Hvis en funksjon er deklarert for eksport mer enn én gang.

Symptomer

Linker-utdata kan ligne på følgende:

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

Årsak

Linker feilnummer LNK4197 genereres når en funksjon er deklarert for eksport mer enn én gang. En funksjon er deklarert for eksport i én av følgende måter:

  • Funksjonen er Deklarer ved hjelp av __declspec(dllexport) -nøkkelordet i C-kildefilen:

    __declspec(dllexport) int DllSample() 
    {
    return 42;
    }
  • Funksjonen er Deklarer ved hjelp av en modul-definisjon (. DEF)-fil:

    EXPORTS
    DllSample

Denne Linker kan det oppstå feil oftest når begge nøkkelordet __declspec(dllexport) og en. DEF-filen brukes til å definere det samme funksjonsnavnet i en. DLL-prosjekt.

Løsning

Hvis du vil løse dette problemet, definere eksporterte funksjoner bare én gang ved hjelp av __declspec(dllexport) -nøkkelordet eller ved hjelp av en. DEF-filen. Ikke bruke begge disse metodene.

Status

Denne virkemåten er standard.

Hvis du vil ha mer informasjon

Deklarerer en funksjon for eksport mer enn én gang kan ikke gi Linker-feilen som er beskrevet i delen "Symptomer" i denne artikkelen i 32-biters versjoner av Microsoft Windows C++ kompilatoren og Linker. Microsoft anbefaler imidlertid at du definerer funksjonen Eksporter bare én gang i både 32-biters og 64-biters versjoner av Windows C++ kompilatoren og Linker.

Trenger du mer hjelp?

Vil du ha flere alternativer?

Utforsk abonnementsfordeler, bla gjennom opplæringskurs, finn ut hvordan du sikrer enheten og mer.

Fellesskap hjelper deg med å stille og svare på spørsmål, gi tilbakemelding og høre fra eksperter med stor kunnskap.

Var denne informasjonen nyttig?

Hvor fornøyd er du med språkkvaliteten?
Hva påvirket opplevelsen din?
Når du trykker på Send inn, blir tilbakemeldingen brukt til å forbedre Microsoft-produkter og -tjenester. IT-administratoren kan samle inn disse dataene. Personvernerklæring.

Takk for tilbakemeldingen!

×