C++ Team Blog

The latest in C++, Visual Studio, VS Code, and vcpkg from the MSFT C++ team

Latest posts

May 7, 2013
Post comments count 0
Post likes count 0

Fix: Visual Studio 2012 Update 2 breaks Windows XP targeting with ATL and/or statically linking MFC

Eric Battalio

Recently, some of our customers reported a bug in Visual Studio 2012 Update 2 that breaks Windows XP targeting with C++ in some scenarios. Specifically, applications using ATL and/or statically linking with MFC will get the following error when run on Windows XP:"The procedure entry point InitializeCriticalSectionEx could not be located in the dynamic link library kernel32.dll."This issue has been fixed in Visual Studio 2012 Update 3 RC1. If you encounter this issue, please download and install this update.

Apr 26, 2013
Post comments count 0
Post likes count 0

NuGet for C++

Jennifer Leaf [MSFT]

The wait is over.  NuGet support for C++ projects is here.Quick Links• NuGet 2.5 Download page: https://nuget.codeplex.com/releases/view/96733• CoApp’s Powershell Tools Installer to create C++ NuGet packages: http://coapp.org/releases• Some C++ NuGet packages to try out:  http://nuget.org/profiles/coapp/Start downloading, then head on back here to learn more about NuGet and how to create and use packages for C++ libraries.What is NuGet?From the NuGet website: NuGet is a Visual Studio extension that makes it easy to add, remove, and update libraries and tools...

Apr 21, 2013
Post comments count 0
Post likes count 0

Profile Guided Optimization (PGO) drives next generation SAP NetWeaver Performance

Ankit Asthana

To introduce myself I am Ankit Asthana and I am the program manager for the backend C++ compiler. In my last blog I provided an introduction to what Profile Guided Optimization (PGO) is all about with an exercise which involved PGO’izing the NBody sample application.  In this blog I would like to talk about how PGO is used within SAP to power and deliver next generation performance for SAP NetWeaver.   Starting with a little bit of history, the effort to PGO’ize SAP NetWeaver was undertaken and completed by SAPs Microsoft Platforms Group. The SAP Microsoft Platforms Group is responsible...

Apr 19, 2013
Post comments count 0
Post likes count 0

Finding the Visual Studio Command Prompts in Visual Studio 2012

Jennifer Leaf [MSFT]

If you’re using Visual Studio 2012 on Windows 8, you may be looking for the Visual Studio Command Prompt shortcuts.  These shortcuts are installed by Visual Studio to run scripts that configure the command line environment to use particular sets of Visual Studio tools, or to use specific versions of the Visual C++ compiler from the command line. These shortcuts are installed with Visual Studio 2012, but only the “Developer Command Prompt for VS2012” (which is equivalent to the shortcut for the x86 native tools) is pinned to the Start screen by default.  The command prompts for the x64...

Apr 11, 2013
Post comments count 0
Post likes count 0

Developing an app with the Visual Studio 3D Starter Kit, part 3 of 3

Roberto Sonnino - MSFT

Welcome back to our third and final post on using the Visual Studio 3D Starter Kit! If you read our previous posts in this series (here and here), you’ve got an app that has an animated die, and you’re ready to make the last few changes to get this app to run on Windows RT devices and Windows Phone 8.  If you haven’t read the previous posts, you may want to go through these posts and create an app – we’ll be here once you’re ready. If you're more of a visual learner, you might prefer following Part 1 and 2 in our new Channel 9 video! In less than 30 minutes you'll g...

Apr 8, 2013
Post comments count 0
Post likes count 0

Profile Guided Optimization (PGO)

Ankit Asthana

PGO is a runtime compiler optimization which leverages profile data collected from running important and performance centric user scenarios to build an optimized version of the application. PGO optimizations have some significant advantage over traditional static optimizations as they are based upon how the application is likely to perform in a production environment which allow the optimizer to optimize for speed for hotter code paths (common user scenarios) and optimize for size for colder code paths (not so common user scenarios) resulting in generating faster and smaller code for the application attributing t...

Apr 4, 2013
Post comments count 0
Post likes count 0

Build faster and high performing native applications using PGO

Ankit Asthana

I am Ankit Asthana and I am the program manager for the backend C++ compiler. For today's topic I want to blog about a really cool runtime compiler optimization called Profile Guided Optimization (PGO) (we on the team call it POGO or PGO for short). PGO was initiated by the Visual C and Microsoft Research groups in the late 90's and primarily focused on Itanium architecture. PGO was eventually shipped as a part of Visual Studio C/C++ 2005 and is today a key optimization providing significant performance boost to Microsoft applications, applications from other companies and, after you read this article, perhaps ev...

Apr 2, 2013
Post comments count 0
Post likes count 0

Developing an app with the Visual Studio 3D Starter Kit, part 2 of 3

Roberto Sonnino - MSFT

A few days ago we talked about how to use the Visual Studio 3D Starter Kit to create a simple dice rolling app.  Now we’re going to take the app one step further, by adding some animation.  If you need to catch up, here’s a link to the previous blog post. Let it roll, baby, roll In order to make anything move in a graphics application, the steps are always the same: In our case we will add a new method called RollDie() that will set the state and save the starting time. We will use this method to calculate each die roll result, but for now let’s just execute an animation t...

Mar 26, 2013
Post comments count 0
Post likes count 0

Developing an app with the Visual Studio 3D Starter Kit, part 1 of 3

Roberto Sonnino - MSFT

As we promised a few weeks ago, welcome to the first post in a series where we’ll explore a full end-to-end app developed with the Visual Studio 3D Starter Kit. During this series we’ll develop a 3D dice roller that allows you to roll a 6-sided die by tapping or clicking it. In the process of rolling a number, the die will jump and flip in the air. This app will also work on Windows 8’s snap view, so that users can still roll dice while working on other apps. Finally, we’ll show you how to make this app compatible with Windows RT devices and port it to Windows Phone. This first post ...