我最近在应用程序中包含 .NET Framework 4.0 时遇到了类似的问题。一旦我弄清楚它到底在哪里寻找丢失的文件,我最终就解决了这个问题。
我假设您已经安装了某些版本的 SQL Server(Express 或其他版本)。
如果您有 Visual Studio 2013,您应该有以下文件夹:
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\Bootstrapper\Packages\
在该文件夹中,您应该有一个“SqlLocalDB2012”文件夹。
该文件夹中应该有一个product.xml 文件。这也是安装程序应该驻留的地方。就我而言,它们不存在,我必须收集它们并将它们放置在包含product.xml 文件的文件夹中(对于默认的英语安装程序)或子文件夹中(例如,fr 表示法语)。 (请注意,在我的例子中,我缺少 .NET FrameWork 安装程序,而不是 SqlLocalDB2012,但我假设问题与我遇到的问题相同)。
产品 xml 文件可以为您提供在计算机上查找丢失文件的线索。就我而言,前几个元素表明它正在 SQL Server 目录中查找内容:
<FileCheck
Property="sqllocaldbVersion"
FileName="sqlservr.exe"
SearchPath="Program Files\Microsoft SQL Server\110\LocalDB\Binn"
SpecialFolder="WindowsVolume"
/>
我能够通过在以下位置搜索来找到各个子目录中丢失的文件:
C:\Program Files\Microsoft SQL Server\110\Setup Bootstrap
希望这对你有用。