COM- og .NET-feil etter office-arkitekturoverføring
Symptomer
Når du overfører Microsoft Office-arkitektur fra 32-biters til 64-biters, opplever du feil hvis et COM-program eller en .NET Framework-klient brukes. Disse mulige feilene omfatter, men er ikke begrenset til, følgende:
TYPE_E_CANTLOADLIBRARY
TYPE_E_LIBNOTREGISTERED
TYPE_E_ELEMENTNOTFOUND
Feilene oppstår vanligvis hvis COM-programmet eller .NET-klienten kjører som en 32-biters prosess.
Eksempel
Disse feilene kan oppstå når følgende kode kjøres i 86-biters PowerShell:
$xl = New-Object -ComObject Excel.Application
$xl.Visible = $True
Årsak
Feilene skyldes frittstående registerundernøkler som er opprettet av overføringen.
Løsning
Du kan løse dette problemet ved å bruke én av følgende metoder.
Metode 1: Slett frittstående undernøkler automatisk
Kjør dette skriptet fra følgende GitHub-plassering for å finne og fjerne de foreldreløse undernøklene:
Metode 2: Slette frittstående undernøkler manuelt
Hvis PowerShell-skriptet fra trinn 1 ikke sletter de frittstående undernøklene, kan du også se etter frittstående oppføringer manuelt. Den berørte enheten kan ha frittstående undernøkler som ligner på følgende eksempel:
HKEY_CLASSES_ROOT\WOW6432Node\TypeLib\GUID\1.9\0\Win32
Obs! I dette eksemplet GUID er en streng som er spesifikk for undernøkkelen.
Undernøkkelen vil ha en verdi som peker til en manglende kjørbar Fil-fil i Office i programfiler (x86)-filbanen. Eksempel:
C:\Programfiler (x86)\Microsoft Office\Root\Office16\EXCEL.EXE
Det bør også være en tilstøtende undernøkkel som peker til riktig 64-biters programfilplassering.
Tilbakemeldinger
https://aka.ms/ContentUserFeedback.
Kommer snart: Gjennom 2024 faser vi ut GitHub Issues som tilbakemeldingsmekanisme for innhold, og erstatter det med et nytt system for tilbakemeldinger. Hvis du vil ha mer informasjon, kan du se:Send inn og vis tilbakemelding for