gpt4 book ai didi

.net - Firebird DDEX Visual Studio 2010“无法找到请求的.Net Framework数据提供程序。它可能没有安装”

转载 作者:行者123 更新时间:2023-12-05 01:27:22 25 4
gpt4 key购买 nike

我已经被这个问题困扰了好几天。我看到很多人都遇到了这个问题,我尝试了很多事情,但还是失败了。请有人帮我。

我正在运行Windows 7 64位,MS Visual Studio 2010,Firebird DDEX 2.0.5和NetProvider 2.7.0.0。在尝试安装所有组件时,我密切关注this stackoverflow问题以及DDEX提供的自述文件以及其他在线文章。我已经完成以下工作:


将NetProvider 2.7.0.0安装到C:\ Program Files(x86)\ FirebirdClient。
将DDEX 2.0.5文件解压缩到C:\ Program Files(x86)\ FirebirdClientt。
在C:\ Program Files(x86)\ FirebirdClient \ reg_files \ VS2010中编辑了注册表文件FirebirdDDEXProvider64,以便

“” CodeBase“ =”%Path%\ FirebirdSql.VisualStudio.DataTools.dll“


现在读

"CodeBase"="C:\\Program Files (x86)\\FirebirdClient\\FirebirdSql.VisualStudio.DataTools.dll"


然后我安装了它。


我使用gacutil.exe通过执行以下操作来安装FirebirdSql.VisualStudio.DataTools.dll和FirebirdSql.Data.FirebirdClient.dll:

cd“ C:\ Program Files(x86)\ FirebirdClient”
“ C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v7.0A \ bin \ NETFX 4.0 Tools \ gacutil.exe” / i FirebirdSql.VisualStudio.DataTools.dll

“ C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v7.0A \ bin \ NETFX 4.0 Tools \ gacutil.exe” / i FirebirdSql.Data.FirebirdClient.dll


按照上面([这里]) 2超链接的问题中给出的说明,除了我使用程序文件(x86)中的gacutil.exe而不是程序文件将FirebirdSql.VisualStudio.DataTools.dll作为gacutil.exe安装在普通程序文件目录中不存在。我确实使用了gacutil.exe的列表函数来查看两个文件是否都已正确安装,并且还记录了PublicKeyFunction等。


经过大量阅读后,我决定调整所有四个machine.config文件。到达它们的路径是:


C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ CONFIG \ machine.config

C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Config \ machine.config

C:\ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ CONFIG \ machine.config

C:\ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Config \ machine.config

我从DDEX自述文件中复制了代码,并将其粘贴到文件内的正确位置,并相应地填充了各种参数。我这样做时要牢记,运行时版本号会有所不同,具体取决于我是否要调整v2或v4的machine.config文件,还将上面的gacutil.exe步骤中记录的正确参数放在上面...即版本= 2.7.0.0,区域性=中性,publickeytoken = 3750abcc3150b00c。见下文。

C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ CONFIG \ machine.config

<configuration>
<configSections>
<section name="firebirdsql.data.firebirdclient" type="System.Data.Common.DbProviderConfigurationHandler, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="appSettings" type="System.Configuration.AppSettingsSection, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" restartOnExternalChanges="false" requirePermission="false" />


并在文件中进一步

<system.data>
<DbProviderFactories>
<add name="FirebirdClient Data Provider" invariant="FirebirdSql.Data.FirebirdClient" description=".Net Framework Data Provider for Firebird" type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, FirebirdSql.Data.FirebirdClient, Version=2.7.0.0, Culture=neutral, PublicKeyToken=3750abcc3150b00c" />
<add name="Odbc Data Provider" invariant="System.Data.Odbc" description=".Net Framework Data Provider for Odbc" type="System.Data.Odbc.OdbcFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add name="OleDb Data Provider" invariant="System.Data.OleDb" description=".Net Framework Data Provider for OleDb" type="System.Data.OleDb.OleDbFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add name="OracleClient Data Provider" invariant="System.Data.OracleClient" description=".Net Framework Data Provider for Oracle" type="System.Data.OracleClient.OracleClientFactory, System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<add name="SqlClient Data Provider" invariant="System.Data.SqlClient" description=".Net Framework Data Provider for SqlServer" type="System.Data.SqlClient.SqlClientFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</DbProviderFactories>
</system.data>


(我粘贴了额外的代码以防万一?)

v4的machine.config文件与之类似,除了在这里我必须按如下所示调整代码的DBProviderFactories部分:

<configuration>
<configSections>
<section name="firebirdsql.data.firebirdclient" type="System.Data.Common.DbProviderConfigurationHandler, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="appSettings" type="System.Configuration.AppSettingsSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" restartOnExternalChanges="false" requirePermission="false" />


这是之前的原始machine.config代码:

 <system.data>
<DbProviderFactories />
</system.data>


这就是我将其调整为:

 <system.data>
<DbProviderFactories>
<add name="FirebirdClient Data Provider" invariant="FirebirdSql.Data.FirebirdClient" description=".Net Framework Data Provider for Firebird" type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, FirebirdSql.Data.FirebirdClient, Version=2.7.0.0, Culture=neutral, PublicKeyToken=3750abcc3150b00c" />
</DbProviderFactories>
</system.data>


64位V4文件也是如此。

当我打开MS Visual Studio 2010并尝试添加连接时,我可以选择一个Firebird数据源,它列出了适用于Firebird的.Net Framework数据提供程序,在继续输入数据库注册参数时,我会看到下一个窗口。但是,当我按“测试连接”(即使没有输入任何数据)时,它说“测试连接成功”,当我按“确定”时,出现错误“无法找到所请求的.NET Framework数据提供程序”。它可能没有安装。'

我不知道还能做什么。我读过的所有内容都指向不正确的machine.config文件,但我找不到问题。

任何帮助将不胜感激。

最佳答案

从Firebird网站尝试3.0.0
http://www.firebirdsql.org/en/net-provider/

关于.net - Firebird DDEX Visual Studio 2010“无法找到请求的.Net Framework数据提供程序。它可能没有安装”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8835977/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com