I get a “An attempt was made to load a program with an incorrect format” error on a SQL Server replication project确切的错误如下
在最近两个月搬到另一个项目之后,我最近再次开始研究这个项目。 它以前工作得很好,我仔细检查了所有参考文献。 以下baldy的答案是正确的,但您可能还需要在AppPool中启用32位应用程序。 资料来源:http://www.alexjamesbrown.com/uncategorized/could-not-load-file-or-assembly-chilkatdotnet2-or-one-of-its-dependencies-an-attempt-was-made-to-load-一个程序与 - 一个-不正确格式/ 设置应用程序以在我的本地计算机上运行(运行Vista 64位)时遇到此错误:
显然,该应用程序使用ChilKat组件,但似乎我们使用的版本只是32位版本。
要解决此错误,我在IIS中设置我的应用程序池以允许32位应用程序。
然后将"启用32位应用程序"设置为True。
全部做完! 我找到了解决方案。我最近将我的机器升级到Windows 2008 Server 64位。 SqlServer.Replication命名空间是为32位平台编写的。我需要做的就是让它再次运行是将Project Build Properties中的Target Platform设置为X86。
将Web项目属性页面上的Platform Target值更改为
转到IIS
我们最近在尝试从Visual Studio运行代码时遇到了问题。在那种情况下你需要做 对于那些在ASP.NET MVC 3项目中获得此错误的人,在Visual Studio本身中: 在我正在处理的ASP.NET MVC 3应用程序中,我尝试将Microsoft.SqlServer.BatchParser的引用添加到项目中,以解决部署服务器上缺少的问题。 (我们的应用程序使用SMO;正确的解决方法是在部署服务器上安装SQL Server Native Client和其他一些东西。) 即使在我删除了对BatchParser的引用之后,我仍然在我打开的每个ASP.NET MVC 3页面上得到了"一次尝试..."错误,引用了BatchParser DLL,并且该错误之后是几十页解析错误。 如果您遇到这种情况,请执行文件搜索,查看DLL是否仍在项目的 bin文件夹中。即使您进行重建,Visual Studio也不一定清除所有 bin文件夹中的所有内容。当我从bin中删除DLL并再次构建时,错误就消失了。 我在Windows 10中针对IIS Express的MVC5应用程序中使用了此功能。我的解决方案如下:
将其更改为32位(true)它的工作原理 如果你得到这个长度不能小于零。参数名称:iis服务器配置中的长度问题做简单的事情就像你的sql server名称和服务器名称一样改变web.config文件中的连接字符串并重新启动iis然后尝试加载它工作的页面 如果在错误时在Visual Studio 2012中发布,请尝试取消选中"发布"向导中的"发布期间的Procompile"选项。
将项目属性中的目标框架从.NET Framework 4.7.1更改为4.6.2对我有用。
删除此处的临时测试目录 在Visual Studio中将所有项目设置为x64 将默认处理器体系结构设置为x64(Test / TestSettings / Default Processor Architecture)。 确保清理构建解决方案文件。希望这有帮助!
在Windows窗体应用程序中我这样做, |