none
在“如何通过摄像头预览视频”主题上的C++代码是什么? RRS feed

  • 问题

  • 我使用的语言是C++,请问这个语句的C++代码是什么?

    MediaCapture captureMgr = new MediaCapture();
    await captureMgr.InitializeAsync();
    
    // Start capture preview.
    // capturePreview is a CaptureElement defined in XAML.
    capturePreview.Source = captureMgr;
    
    await captureMgr.StartPreviewAsync();

    如果直接输入,出现错误:

     5 IntelliSense:  不能对 WinRT 类使用 new (而应使用 ref new) 

     6 IntelliSense:  未定义标识符 "await" 

    如果将new改为ref new,出现错误:

     5 IntelliSense:  不存在用户定义的从 "Windows::Media::Capture::MediaCapture ^" 到 "Windows::Media::Capture::MediaCapture" 的适当转换

    如果将第一行改为

    MediaCapture^ captureMgr = ref new MediaCapture();

    那么第二行出现错误:(已经去掉await)

     5 IntelliSense:  表达式必须包含类类型

    我应该怎么办???急急急!!!

    2014年4月7日 11:39

答案

  • 你好:

    欢迎来到MSDN中文论坛。

    关于在C++中如何使用MediaCapture API,你可以参考一下微软提供的C++代码示例:

    Media capture using capture device sample

    关于从C#代码转换为C++代码,请参考这篇MSDN博客:

    What You Need to Know to Move from C++ to C#

    因为我不懂C++,我能告诉你的就是这四行代码的意思:

    1. 创建一个MediaCapture的实例

    2. 异步调用实例的InitializeAsync方法

    3. 设置CaptureElement实例的Source属性为该MediaCapture的实例

    4. 异步调用MediaCapture实例的StartPreviewAsync实例。


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2014年4月8日 2:53
    版主