首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试在C#中使用Kinect for Windows,但我得到了System.BadImageFormatException

尝试在C#中使用Kinect for Windows,但我得到了System.BadImageFormatException
EN

Stack Overflow用户
提问于 2012-11-15 14:47:43
回答 1查看 702关注 0票数 0

我试图创建一个非常简单的Microsoft程序,在这个程序中,我订阅了通过数组麦克风实现语音识别的示例Kinect DSS生成的事件。但是,我在运行时看到了下面的错误。

我引用了暴露接口的代理.dll,但是在运行时会出现问题。

我尝试过将我的构建目标平台设置为x86,但这似乎没有解决问题。有什么方法可以验证我的项目是针对x86构建的吗?

无法使用自定义序列化注册类型。:System.BadImageFormatException: 无法加载文件或程序集“file:///c:\users\ajs\microsoft机器人开发工作室4\bin\micarray话识别器.y2011.m06.dll”或其依赖项之一。试图加载格式不正确的程序。文件名:'file:///c:\users\ajs\microsoft robotics dev studio 4\bin\micarray话识别器.y2011.m06.dll‘at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName,String codeBase,robotics,RuntimeAssembly locationHint,StackCrawlMark& stackMark,IntPtr pPrivHostBinder,Boolean,Boolean,Boolean ) at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef,robotics,assemblyRef,StackCrawlMark& assemblySecurity,en21#,Boolean,,),在,证据System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblySecurity,RuntimeAssembly reqAssembly,StackCrawlMark& stackMark,布尔throwOnFileNotFound,布尔forIntrospection,布尔suppressSecurityChecks ),证据securityEvidence,Byte[] hashValue,AssemblyHashAlgorithm hashAlgorithm,Boolean,Boolean,StackCrawlMark& AssemblyHashAlgorithm),在位置,布尔缓存,布尔和en21#在组装区,AssemblyLocations位置) ===预绑定状态信息===日志: User = condor\ajs :Where。Location = c:\users\ajs\microsoft机器人技术开发工作室4\bin\micarray话识别器.y2011.m06.dll日志: Appbase = file:///C:/Users/ajs/Microsoft robotics dev 4/bin/ LOG:初始PrivatePath = NULL调用程序集:(未知)。===日志:这个绑定在LoadFrom加载上下文中启动。WRN:本地图像不会在LoadFrom上下文中被探测。本机映像将仅在默认加载上下文中被探测,如Assembly.Load()。日志:使用应用程序配置文件: C:\Users\ajs\Microsoft 4\bin\DssHost.exe.Config日志:使用主机配置文件: LOG:使用C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config.中的机器配置文件日志:尝试下载新的URL2011.m06.dll.y2011.m06.dll。file:///c:/users/ajs/microsoft机器人技术开发工作室4/bin/micarray话识别器。错误:未能完成程序集的设置(hr = 0x8007000b)。探测结束了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-18 17:13:05

事实证明,我们要做的是使用dsshost32启动程序,而不是使用模板Visual .sln为DSS节点运行的默认构建后DSS代理。这在32位CLR上运行DSS节点,Kinect库可以正常工作。

然后,似乎需要一系列乏味的操作,以便在使用dsshost32时显示Visual中的代码更改:

  1. 构建并运行64位项目,直到日志显示"DSS主机缓存已经更新“为止。这在我的机器上大约需要十秒钟。
  2. 在命令行上使用dsshost32手动运行DSS节点。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13399924

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档