Visual Basic SaveDialog缺少dll

时间:2015-09-03 13:26:49

标签: vb.net visual-studio savefiledialog

我在Visual Basic中编写了一个用户界面,用于向AutoDesk Inventor发送命令以创建3D CAD程序集。在程序结束时,将保存CAD文件并出现SaveDialog框。一段时间它工作得很好,但现在有一个错误。以下是相关的代码段:

SaveDialog.Filter = "Inventor Part | *.ipt|Step File | *.stp"
SaveDialog.DefaultExt = "ipt"
SaveDialog.ValidateNames = True
SaveDialog.ShowDialog()

在显示的最后一行,我得到一个运行时错误,如下所示:

  

“程序无法启动,因为api-ms-win-crt-runtime-l1-1-0.dll是   你的电脑丢失了。尝试重新安装程序来解决此问题   问题。“

关闭此错误消息后,无论如何都会出现SaveDialog框并且工作正常。当然,在编译版本上,错误框实际上从未显示过,程序只是无限期地挂起。

我已经为这个问题寻找解决方案两天了。我使用了Dependency Walker并找到了一个据报道丢失的其他dll的列表,其中大多数都在MSHTML.DLL下

我认为可能在我的程序中没有正确引用的东西,但我不知道在哪里看。谢谢你的帮助!

1 个答案:

答案 0 :(得分:1)

问题是,作为Visual C ++ Redistributable的一部分的 KB2999226 (Universal CRT)无法安装。 您的自动更新是否已关闭?

<强>解决方案

安装Windows更新:

  1. 转到开始 - 控制面板 - Windows Update 然后单击检查更新。安装所有可用的更新。安装更新后,重新启动计算机。重新启动后,再次重复上述步骤,直到没有更新可用。

  2. 下载Visual C ++ Redistributable:

    对于Windows 64位 http://download.microsoft.com/download/9/3/F/93FCF1E7-E6A4-478B-96E7-D4B285925B00/vc_redist.x64.exe

    对于Windows 32位 http://download.microsoft.com/download/9/3/F/93FCF1E7-E6A4-478B-96E7-D4B285925B00/vc_redist.x86.exe

  3. 运行vcredist_x64.exe(64位)或vcredist_x86.exe(32位)并选择“卸载”。再次运行.exe并选择Install