Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C静态库的包装器_C#_C++ Cli - Fatal编程技术网

C# C静态库的包装器

C# C静态库的包装器,c#,c++-cli,C#,C++ Cli,我有一个用于相机的C静态库。现在计划为Windows8开发C#/WPF用户界面,它将使用C静态库捕获视频/音频 我的想法是,C静态将有C++/CLI包装器。包装器将由Dll管理 C#/WPF UI将使用此Dll捕获视频/音频 我想知道这种方法是否好 欢迎提出其他建议。请大家对此提出建议。这确实是解决这个问题的一个非常常见的方法。这样做通常比使用P/invoke容易得多 这两种方法都需要包装静态库。因此,几乎可以肯定的是,使用C++/CLI进行包装会更好,因为与P/invoke相比,连接到C代码要

我有一个用于相机的C静态库。现在计划为Windows8开发C#/WPF用户界面,它将使用C静态库捕获视频/音频

我的想法是,C静态将有C++/CLI包装器。包装器将由Dll管理

C#/WPF UI将使用此Dll捕获视频/音频

我想知道这种方法是否好


欢迎提出其他建议。请大家对此提出建议。

这确实是解决这个问题的一个非常常见的方法。这样做通常比使用P/invoke容易得多


这两种方法都需要包装静态库。因此,几乎可以肯定的是,使用C++/CLI进行包装会更好,因为与P/invoke相比,连接到C代码要容易得多。

所以你的意思是,这是一种很好的方法。PInvoke呢???PInvoke是否支持静态库。不能P/invoke静态库,只能P/invoke DLL,C++/CLI包装是一种方法,和你一样suggest@Chris_vr-这是一种常见的方法,也是PInvoke的替代方法。这两种解决方案都可以做到这一点。选择最适合您的方法。这种情况下的C++/CLI方法只能在Windows平台上移植。@卢卡这个问题明确地谈到了Windows 8和WPF。