2014-08-27 60 views
3

我被要求在vb.net中开发软件,其中一项功能应该是可以在平板电脑上拍照。我已经使用MediaCapture API进行播放,该API返回了一张照片,但由于看起来无法在ModernUI应用程序之外显示预览或其他任何内容。这只是纯粹的照片捕捉。使用Windows 8中的默认相机应用程序拍摄WPF中的照片

我想了一会儿该如何解决这个问题。然后,我从我的Android手机中获得了一些灵感。我的想法是调用某种API来在ModernUI模式下打开常规的Windows 8相机应用程序,让用户拍摄照片,然后通过“返回值”接收该照片,就像您通常在Android应用程序中执行的那样。

现在我的问题是,如果有一种方法来启动Windows 8默认相机应用程序,让它拍摄一张照片,并将其接收回我的WPF桌面应用程序。

我也可以开发我的软件作为ModernUI应用程序,但我从来没有这样做,它似乎也必须在网上商店发布它,但我只想在我的公司内部使用它。

我的其他(简单的愚蠢)想法是要求用户自己打开相机应用程序,拍摄一些照片,稍后再回到我的软件。然后,我可以从他们存储的文件夹中接收图像。我想这也可以,但我不太喜欢这个想法,因为它不是很直观,看起来很愚蠢。

如果你有一个想法(或其他选择),我会很高兴,如果你可以与我分享。

在此先感谢!

回答

2

不幸的是,没有.NET类允许您访问计算机上的网络摄像头或集成相机。这意味着您必须查看本地Windows API并从您的应用程序调用它。我不能指出您必须使用的正确方法,因为我刚刚使用Microsoft Media Foundation从网络摄像头捕获连续的图像流并将其编码为视频文件。

有一些网站在封装.NET类本机功能,但我不知道他们是好还是不好:

在Windows应用商店应用中,使用您提到的媒体捕获API可以相对简单地执行此任务。如果您有Windows 8专业版或企业版,您还可以侧载Windows Store应用程序 - 那么您不必在Windows应用商店中发布应用程序。

如果您还有其他问题,请随时询问。

+0

非常感谢!不幸的是,这并不是我所期望的。似乎对于这么简单的事情来说相当复杂。 是否至少有一种方法可以从我的WPF程序启动默认相机应用程序? – 2014-08-27 13:54:37

+0

看看这个问题:http://stackoverflow.com/questions/22475520/start-metro-app-camera-from-wpf-application – feO2x 2014-08-27 13:59:24

+0

也许这也可以帮助你:http://www.devx.com/DOTNET /条/ 30375 – feO2x 2014-08-27 15:50:21

相关问题