
I don’t understand this picture well.
In the Metro style Apps, what does C/C++ mean? Native C/C++? or is it managed C++? They(Metro style apps) don’t even have Win32 layer!
To make an application which compatible with both Metro style and Desktop, should we only use .NET code? The old native applications can run on Windows8 Tablet?
Yes old apps, including unmanaged native apps written with C/C++/Win32 and managed ones in .NET, will run on a Windows 8 tablet fine. Except of course if the tablet is running an ARM processor; then it will only support the new Metro-style apps (and also apps which specifically target the ARM).
In the picture, C/C++ means unmanaged native apps sitting on the WinRT API, which is also unmanaged native. There will be seamless integration with .NET for those that want to use C# or VB.NET.
On your last question, you can’t make an application which is compatible to both Metro-style and Desktop … they are mutually exclusive – you have to make a choice.