2014-10-02 40 views
1

Windows Media Foundation似乎在Windows 8.1中稍有不同。使用C++或C++/CX檢測Windows Phone版本

我們還需要添加一些代碼,看起來像這樣:

#if WINDOWS_81 
    DX::ThrowIfFailed(
     MFStartup(MF_VERSION) 
     ); 
#endif 

我們該如何檢查,看看有什麼版本的Windows Phone通過C++運行?

謝謝!

回答

1

您可以使用WINVER在命令時查看/控制構建的目標版本。見Using the Windows Headers

// 0x0603 for Windows/Windows Phone 8.1 
#if WINVER >= 0x0603 
    DX::ThrowIfFailed(
     MFStartup(MF_VERSION) 
     ); 
#endif 

如果唯一的原因是MFStartup檢查,那麼你可以省略條件。它在8.1中是必需的,但它應該在8.0下正常工作。

+0

謝謝,這是完美的。我已經添加了一個將C#環境版本傳遞給C++/CX的解決方法,但是這樣做效果更好。 – Grapes 2014-10-04 03:21:07

+0

Windows Phone未列在您引用的頁面上。你從哪裏獲得Windows Phone的定義? – jww 2016-04-28 00:56:58