尝试加载格式不正确的程序.Microsoft.TeamFoundation.WorkItemTracking.Client.DataStoreLoader

Jor*_*son 10 c# tfs visual-studio-2012

我正在编写一个从TFS中获取错误的应用程序.当我在我的机器上运行此程序并安装了Visual Studio运行Windows 8时,它运行正常.当我在我的一台运行Server 2008 R2和Windows 7的虚拟机上运行此程序时安装了Visual Studio Agent它会引发以下异常

Error occured: Could not load file or assembly 'Microsoft.TeamFoundation.WorkItemTracking.Client.DataStoreLoader, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. An attempt was made to load a program with an incorrect format.
   at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.InitializeInternal()
   at AutomationEntities.TFSManager.GetBugsFromTestCase(Int32 testCaseID)
   at AutomationEntities.ReportManager.GetBugStringFromTestCases(String testCaseString, String status)
   at AutomationEntities.ReportManager.InsertOrUpdateReport(String agentMachineName, String product, String versionName, String serverURL, String testCategory, String testName, String testNumber, String status, DateTime lastModifyTime, String errorMessage, Nullable`1 elapsedTime)
   at AutomationManager.XMLHandlerReport.AddItemToReportDatabase(String agentMachineName, String product, String version, String serverURL, String testCategory, String testName, TEST_STATUS testStatus, String errorMessage, String testNumber, String elapsedTime)
   at AutomationManager.ReportManager.ReportIndividualTestItem(TestData pendingTest, String testName, TEST_STATUS testStatus, String errorMessage, String resultsFileWPath)
   at AutomationManager.Program.Main(String[] args)
Run Code Online (Sandbox Code Playgroud)

我的所有机器都运行64位Windows

我不知道.列出的Dll与应用程序位于同一文件夹中,它是版本11.任何关于我缺少的想法?

Jay*_*ass 21

我在ASP.NET Web应用程序中遇到了同样的问题.我通过启用Enable 32-bit ApplicationsIIS应用程序池解决了这个问题.


Jor*_*son 1

这最终成为 GAC 的一个问题。我只是使用 dll 构建所有引用,而不是假设它们位于 GAC 中

更新:

如果您查看引用的属性,就会发现有一个构建属性。将所有有问题的 DLL 设置为在构建时复制。

  • 你是怎么做到的?我有同样的问题,想尝试一下你的解决方案。 (2认同)