【发布时间】:2011-05-31 18:57:56
【问题描述】:
我的机器: Windows XP (x86), VS2008, .net 3.5, sql server 2005, WinForms -> App 工作正常。
生产机器: Windows 7 (x64), SQl Server 2005 Express -> 应用程序启动但抛出异常
Visual Studio 在安装项目和 RMO 项目上以 x86 为目标。 Visual Studio 给了我几个警告,但我仍然可以构建:
Unable to find dependency 'MICROSOFT.SQLSERVER.MANAGEMENT.SQLPARSER' (Signature='89845DCD8080CC91' Version='10.0.0.0') of assembly 'Microsoft.SqlServer.Smo.dll'
Unable to find dependency 'MICROSOFT.SQLSERVER.MANAGEMENT.SQLPARSER' (Signature='89845DCD8080CC91' Version='10.0.0.0') of assembly 'Microsoft.SqlServer.Management.SmoMetadataProvider.dll'
这是一个简单的 RMO(复制管理对象)应用程序,它在 SQL Server 2005 中启动请求订阅并显示状态。在我的机器上工作正常,但在生产机器上失败。我正在使用安装项目在生产机器上安装应用程序,但我认为我在某处缺少依赖项,但我无法弄清楚。 在生产机器上,应用程序启动正常,但是当我尝试同步订阅时,我得到:
System.IO.FileNotFoundException: The Specified module could not be found. (Exception from HResult: 0x8007007E)
编辑: Win 7 中的任务管理器指示它作为 32 位应用程序 (myapp.exe *32) 运行。
编辑:好的,我的应用程序现在在任务管理器中显示它是 64 位应用程序,但我遇到了错误。我在想我如何有一个针对 x86 的依赖 dll。如何验证依赖项 dll 是否针对正确的平台和/或确保它针对 x64... /p>
无法加载文件或程序集“Microsoft.SqlServer.Replication, Version=10.0.0.0, Culture-neutral, PublicKey Token=89845dcd8080cc91”或其依赖项之一。试图加载格式不正确的程序。
【问题讨论】:
标签: c# winforms sql-server-2005 rmo-programming