7

我在 Microsoft Visual Studio 2010 中制作了一个 Kinect 应用程序。我需要制作一个可以在任何基于 Windows 的系统上运行的应用程序的 exe。如果我需要这样做,系统是否应该满足任何要求?如果是,那我该怎么做?

我尝试通过将其复制到另一个文件夹中来使用 application/bin/debug/application.exe 中的 exe,但它显示错误,但如果我从 bin/debug/application.exe 运行 exe,它可以工作。我在这里遗漏了什么还是唯一的方法?

4

3 回答 3

8

“任何基于 Windows 的系统”都行不通。假设您使用的是 Kinect SDK,它只能在 Windows 7(并且应该是 Windows Server 2008)上运行。运行该应用程序的计算机将需要 Kinect Runtime,它仅适用于新的 Kinect for Windows 传感器,或者 Kinect SDK,它也适用于 Kinect for Xbox。微软希望销售更多用于 Windows 传感器的 Kinect,因此他们不允许运行时与旧的 Xbox Kinect 一起使用。在某种程度上是有道理的,但是当我第一次发现它时,这个人让我感到烦恼。有一篇简短的文章展示了如何在应用程序加载时测试运行时是否存在,因此您可以显示适当的错误消息,而不仅仅是崩溃。

您需要将程序依赖的任何文件(例如 DLL 文件)与可执行文件一起复制。这里有关于如何将 DLL 文件嵌入到可执行文件中的说明;我没有尝试过,但它可能值得一试。

安装 Runtime 或 SDK 时应安装正确的 .NET 版本;你不应该担心这个。

于 2012-08-12T23:47:03.557 回答
3

@Coeeffect 是对的,但是您也可以通过转到项目-> 属性-> 发布-> 发布向导来发布您的应用程序的 1.0.0.0 版本,以发布您的应用程序,然后在其他计算等上使用希望这可以帮助!

于 2012-08-13T16:51:35.600 回答
1

您需要复制程序使用的所有非标准 DLL。

目标计算机需要适当版本的 .Net。

于 2012-08-12T23:31:11.013 回答