解决D/E盘根目录出现msdia80.dll文件
一直空着的E盘根目录突然出现了一个 msdia80.dll 文件,没有直接删除,在网上搜索了一系列解决办法。
解决D/E盘根目录出现msdia80.dll文件
不能直接删除。
第一个搜到的解决方法—>link1.
1.msdia80.dll复制到C:\Program Files\Common Files\Microsoft Shared\VC\内。
2.win+R运行cmd;
3.输入如下命令回车:regsvr32 “C:\Program Files\Common Files\microsoft shared\VC\msdia80.dll”;
4.成功成功后删除d/e盘根目录出现的Msdia80.dll文件。
进行到第三步的时候,没有提示成功,反而提示0x80004005错误。
Win10系统提示0x80004005错误代码
搜到的解决方法—>link2
win+R运行cmd,输入:
1.regsvr32 Softpub.dll 并回车;
2.regsvr32 Wintrust.dll并回车;
3.regsvr32 Initpki.dll并回车。
第三步出现了
仔细看需要管理员权限,于是“Windows+X”,在打开的菜单中选择并点击“Windows PowerShell(管理员)”选项,依次输入上述三条字符串;第三步还是不行,只是提示变了:
win10系统模块initpki.dll加载失败
搜到的解决方法—>link3
(根据这个解决办法,重启电脑后仍然没有成功加载模块initpki.dll)
办法如下:
在“Windows PowerShell(管理员)”中输入下述代码:
a r c h = G e t − W M I O b j e c t − C l a s s W i n 3 2 P r o c e s s o r − C o m p u t e r N a m e L o c a l H o s t ∣ S e l e c t − O b j e c t A d d r e s s W i d t h W r i t e − H o s t " 1. S t o p p i n g W i n d o w s U p d a t e S e r v i c e s . . . " S t o p − S e r v i c e − N a m e B I T S S t o p − S e r v i c e − N a m e w u a u s e r v S t o p − S e r v i c e − N a m e a p p i d s v c S t o p − S e r v i c e − N a m e c r y p t s v c W r i t e − H o s t " 2. R e m o v e Q M G R D a t a f i l e . . . " R e m o v e − I t e m " arch = Get-WMIObject -Class Win32_Processor -ComputerName LocalHost | Select-Object AddressWidth Write-Host "1. Stopping Windows Update Services..." Stop-Service -Name BITS Stop-Service -Name wuauserv Stop-Service -Name appidsvc Stop-Service -Name cryptsvc Write-Host "2. Remove QMGR Data file..." Remove-Item " arch=Get−WMIObject−ClassWin32Processor−ComputerNameLocalHost∣Select−ObjectAddressWidthWrite−Host"1.StoppingWindowsUpdateServices..."Stop−Service−NameBITSStop−Service−NamewuauservStop−Service−NameappidsvcStop−Service−NamecryptsvcWrite−Host"2.RemoveQMGRDatafile..."Remove−Item"env:allusersprofile\Application Data\Microsoft\Network\Downloader\qmgr*.dat" -ErrorAction SilentlyContinue
Write-Host “3. Renaming the Software Distribution and CatRoot Folder…”
Rename-Item $env:systemroot\SoftwareDistribution SoftwareDistribution.bak -ErrorAction SilentlyContinue
Rename-Item $env:systemroot\System32\Catroot2 catroot2.bak -ErrorAction SilentlyContinue
Write-Host “4. Removing old Windows Update log…”
Remove-Item $env:systemroot\WindowsUpdate.log -ErrorAction SilentlyContinue
Write-Host “5. Resetting the Windows Update Services to defualt settings…”
“sc.exe sdset bits D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)”
“sc.exe sdset wuauserv D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)”
Set-Location KaTeX parse error: Undefined control sequence: \system at position 15: env:systemroot\̲s̲y̲s̲t̲e̲m̲32 Write-Host …arch -eq 64){
wusa Windows8-RT-KB2937636-x64 /quiet
}
else{
wusa Windows8-RT-KB2937636-x86 /quiet
}
Write-Host “11) Starting Windows Update Services…”
Start-Service -Name BITS
Start-Service -Name wuauserv
Start-Service -Name appidsvc
Start-Service -Name cryptsvc
Write-Host “12) Forcing discovery…”
wuauclt /resetauthorization /detectnow
Write-Host “Process complete. Please reboot your computer.”
最后
虽然link3的方法没有解决“模块initpki.dll加载失败”的问题,但是我重新根据link1.里面的方法,在“Windows PowerShell(管理员)”中输入:regsvr32 "C:\Program Files\Common Files\microsoft shared\VC\msdia80.dll"并回车之后,系统提示成功的字样:
终于可以删除E盘根目录中的msdia80.dll文件。
总结
D/E盘根目录出现msdia80.dll文件的原因:计算机上安装了 Microsoft Visual C++ 2005 可再发行组件时,Msdia80.dll文件被错误安装在其他驱动器的根文件夹中。
虽然成功处理了E盘根目录出现的msdia80.dll文件,但是最后也没能成功解决“模块initpki.dll加载失败”的问题,再接再厉。
vana
2020.11.15
参考:https://blog.csdn.net/qq_37894319/article/details/107384982
https://jingyan.baidu.com/article/63acb44acef55661fdc17e56.html
http://www.lotpc.com/dngz/7365.html
https://blog.csdn.net/tpk5003/article/details/69224675
http://www.zhuangjiba.com/soft/9350.html
http://www.winwin7.com/jc/17905.html