我无法在给定的 Visual Studio 项目中添加 Leap SDK 中的 Leap.dll 和 Leapcsharp.dll。我正在为 Windows 桌面使用 VS2012 express。
我已经从leapmotion 站点下载了sdk。我收到错误消息“无法加载引用。请确保该文件是可访问的并且是有效的程序集或COM 组件。”
我无法在给定的 Visual Studio 项目中添加 Leap SDK 中的 Leap.dll 和 Leapcsharp.dll。我正在为 Windows 桌面使用 VS2012 express。
我已经从leapmotion 站点下载了sdk。我收到错误消息“无法加载引用。请确保该文件是可访问的并且是有效的程序集或COM 组件。”
在 Windows 上,确保 Sample.exe 和 LeapCSharp.NET3.5.dll 或 LeapCSharp.NET4.0.dll 在当前目录中。将
lib\x86
目录中的库用于 32 位项目。将lib\x64
目录中的库用于 64 位项目。[...]
您只需要 LeapCSharp.NET3.5.dll 或 LeapCSharp.NET4.0.dll 即可编译您的项目。但是您需要非托管库Leap.dll
并LeapCSharp.dll
运行您的应用程序(lib\x86
在lib\x64
Leap SDK 中)
我个人将这些非托管库放在App_Bin\<platform name>
解决方案目录下的文件夹(<平台名称> = x84 或 x64)中,并使用以下构建后命令将它们复制到编译器输出目录(例如MyProject\bin\x64\Debug
)
xcopy /Y /D "$(ProjectDir)..\App_Bin\$(PlatformName)\*.*" "$(ProjectDir)bin\$(PlatformName)\$(ConfigurationName)\"
从leap.dll 和leapcsharp.dll 向上一个目录是LeapCSharp.NET3.5.dll
和LeapCSharp.NET4.0.dll
. ( LeapDeveloperKit\LeapSDK\lib )
这些是 Visual Studio 参考的工具。
如果要使用leap.dll 文件,则需要使用P/Invoke
这是一个更好的P/Invoke 教程。
使用像DLL Export Viewer这样的应用程序,您可以查看可用于您的leap dll 的所有方法。这些将是您使用 P/Invoke 的入口点。还有一个PInvoke 辅助工具可以为您编写 c#。
但是,使用以下方法执行此操作leap.dll
:
[DllImport("leap.dll")]
public static extern bool hasFocus();
LeapCSharp.Net4.0
与使用dll 引用执行此操作相同:
Leap.Controller con = new Controller();
var focus = con.HasFocus;
所以你不需要两组 DLL。
我有同样的问题。
您必须将现有项目添加到您的解决方案并从以下文件夹中选择文件 Leap.dll、LeapCSharp.dll:LeapDeveloperKit\LeapSDK\lib(x86 或 x64)和 LeapCSharp.NET4.0.dll 或 LeapCSharp.NET3.5。 dll(这取决于您在当前项目中使用的是框架 4 还是 3.5)来自文件夹:LeapDeveloperKit\LeapSDK\lib。然后你必须在它们中的每一个中单击并选择“属性”选项。您必须确保使用“copy allwas”选项选择了“Copy to Output Directory”选项(这非常重要)。然后你必须在 References -> Add Reference -> Browse -> 选择您的项目(您当前的解决方案)-> 选择 LeapCSharp.NET4.0.dll(从文件夹)-> 确定。就这样。
或者
观看 此视频分钟 11:29。她告诉你更好。
您只需将文件 Leap.dll 和 LeapCSharp.dll 添加到您的项目中。
并在 Visual Studio 中设置文件属性
复制到输出目录 = 始终复制;
还要在您的项目中添加对 LeapCSharp.NET4.0.dll 或 LeapCSharp.NET3.5.dll 项目的引用。引用必须对应于用于调试或发布项目的机器类型。这些文件在 SDK 中提供给您