Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Comments

pierremf pierremf
  • Using the Windows Runtime from C++

    Andre wrote

    > If all Windows developers would be C++ developers
    > it would be fairly simple - WinRT would be something
    > like QT - but come on - it's not the case

    I'm thinking about Gdiplus API, which is pure C++ API in native code:

    using namespace Gdiplus;
    Bitmap *b = new Bitmap("a.jpg");

    and is also part of the .Net framework, can be used in C# or VB:

    using System.Drawing
    Dim b As New Bitmap("a.jpb")

    This is the kind of API what I would have liked for WinRT.

    This is not COM ABI.

    Impossible because of concurrency/process/thread safety?

  • Using the Windows Runtime from C++

    Thank you very much for the detailed clarifications. This answers my concerns.

    I especially like this paragraph:

    >there are real conveniences (cleaner code) and efficiencies
    >(performance gains) from using compiler-understood extensions
    >like C++/CX, which is why we went to the trouble of baking
    >a CComPtr<T> into the language as T^... so my only
    >recommendation/request would be that you give each a
    >try and then use whichever you like best. Who knows,
    >some people who hate extensions might just find after
    >trying them side by side that they kinda prefer the
    >language extensions after all

  • Using the Windows Runtime from C++

    Maybe there is an easy way to close this discussion:

    Do you MS-guys use these extensions in Windows 8 code?

    If yes, then we will certainly have to reconsider our bad 1st impression about C++/CX, and admit we are wrong.

    If no, then this C++/CX stuff will certainly join WPF (amongst others) in the trash can very soon.

  • Using the Windows Runtime from C++

    @Homero

    +1

    WE DO NOT WANT TO USE THESE EXTENSIONS

  • Using the Windows Runtime from C++

    We don't need these C#-like extensions to access COM objects in C++. In C++ we always write more code than in C#. C++ programmers want to know what the code do so they can tune it or make it performant, C# programmers don't care.

    We don't need delegates, partial classes, generics, or ^ pointers since C++ already knows how to do that. Why would we do it the CX/C# way?

    C++ references a COM object with a * pointer or a smart pointer.

    Hopefully there seems to be a new WRL C++ template library somewhere. Is there any documentation about it? Can we use it instead of CX?

  • Mohsen Agsen - C++ Today and Tomorrow

    I almost agree with most posts here.

    I've been working for different ISVs for several years on large C++ projects (tax paying software, Image editing, Financial, programming tools...)

    One problem with existing C++ apps now is the UI, which is outdated. They share that problem with Delphi apps Wink. You know that battleship gray. I've spent lots of time trying to move (parts of) projects to Winform or WPF. This generally ends up with an awfull mix of C++, C++/CLI and C#. You know what I mean since you guys have ported Visual Studio UI to WPF ! This surely has been a huge amount of work.

    If there would have been a modern UI C++ library, thing would have been far simpler. I've heard about DirectUI, and I can't wait to know more about what seems to be a native UI library.

    Also I have participated to brand new WPF projects, in C#. For example an image editing app. One year after it started, the project is thrown away (10 men-year). WPF is too heavy, .Net has poor memory management, and the software was not compatible enough with previous versions of this project. Customers don't want a new app, they just want a better app which is able to reuse their old files/data.

    What are all the C++ app developpers doing ? They have built their own UI framework and libraries years ago, sometimes based on MFC, or other libraries. (AFAIK MFC is not that bad, it is still used in many C++ apps, it is just old) They try to update the framework over the years. That's not easy, and requires a lot of resources. In the same time they have to update the applications. I bet the Office team at Microsoft has its own C++ framework. You can ask them what to do.

    Since I've discovered .Net framework, I wonder why it is not also written in C++ native code. Maybe not the whole framework, but at least some core libraries, a powerfull UI layer, a fast database engine (I sometimes use SQLite in C++ client app)

    Well, you know, just ask the guys who have ported Visual Studio to WPF, they will tell you what you need to do Smiley

    Oh, and an important point: all developers have coding guidelines (or at least they should!). Many C++ ISVs ask their developers to write SIMPLE code. That means, avoid functors, use templates sparingly, etc. Don't use advanced C++ features if you can write simple code. Because simple code contains less bugs, and can easily been maintained. C++ is a powerfull language, and not all C++ developers can handle that power correctly.

    I don't expect C++ language improvements, C++ is fine. But please, give us the equivalent of a light .Net framework, written in native code. That would be heaven.

  • Pat Brenner: Visual Studio 2010 - MFC and Windows 7

    Just wondering if all the features Pat talks about are delivered in vs2010 beta 2 ?

     

    For example, about the taskbar interaction, all I have found is CWinApp::EnableTaskbarInteraction(BOOL bEnable), which actually only sets a BOOL flag... which is not used anuwhere else in the MFC code. Or I am missing something ?

     

    Also, I can't open the class wizard now Crying

     

    Anyway the Ribbon designer is really great ! .NET programmers will really be jalous. Big Smile

     

    www.blogmfc.com (in French)

    http://www.microsofttranslator.com/BV.aspx?ref=Internal&a=http%3a%2f%2fwww.blogmfc.com (automatic translation in English)