Things I like about native development with C++/CX

Visual Studio 11 brings many new things for native development, including support for new features from C++11 (unfortunately not all), or ability to write Metro apps with C++/CX including modeling the UI with XAML. In this post I will talk a bit about three favorite features that I noticed immediately after trying VS11 from Windows…

WinRT and winmd Files

If you tried the Win8 Developer Preview and built WinRT components (native or managed) you noticed the .winmd files. The name stands for Windows Meta Data and the format of these files is the same used by the .NET framework for the CLI, i.e. ECMA-335. That means you can actually read these files with a…

Accessing 64-bit Native COM Server From a Managed Client

Not long ago I ran into a COM interop problem that was a bit tricky to fix. So I’m sharing the problem and the solution here in case others encounter the same problem. I had this native in-proc COM server that initially was built only for x86. It was used in a native MFC application…

C++, WinRT and Partial Classes

Partial classes are finally available to C++. Sort of. It’s not part of the new C++11 standard, it’s part of the C++/CX language developed by Microsoft for targeting WinRT on Windows 8. Partial classes mean that you can define a class spanned across several files. Why is this great? Because it allows developers and automatic…

Alchemy 2.1 – 500 Elements And New Languages

Many of you have requested an update of the game, with new elements and challenges. After lot of time in coordinating the translations, the latest update is finally ready, with the exception of the German translation which is not available for the new elements (if anyone interested in helping there, please drop a comment). Alchemy…

Windows Runtime

Windows Runtime, or shortly WinRT, is a new runtime (siting on top of the Windows kernel) that allows developers to write Metro style applications for Windows 8, using a variety of languages including C/C++, C#, VB.NET or JavaScript/HTML5. Microsoft has started rolling out information about Windows 8 and the new runtime at BUILD. WinRT is…

Windows Phone 7 Quick Start Developer Guide

Earlier this year I published a series of articles on Codeguru about WP7 Silverlight development. Later on I have remastered them a bit and merged them together with a couple of articles by Vipul Patel into a small eBook that was published on internet.com, called Windows Phone 7 Quick Start Developer Guide. There is also…

Display images as you type in C++

There was a question on Stackoverflow about a C++ project displaying an image as you type. Here is the original question: I am writing a very simple program in C++ that listens to keyboard input, but what I want to output is much more difficult than I expected. For every key I press, I want…

Typical error porting application from 32- to 64-bit

I recently ran across a bug with an application ported to the x64 platform. After debugging the application the error turned to be due to integrals layout and casting. I think this is a typical example worth mentioning. It starts with this definition:

which is used for a combo box with SetItemData:

Notice…

Alchemy For a Billion Native Speakers

Version 2.0.3 of Alchemy (released today) is available in 14 languages: Czech, Danish, Dutch, English, French, German, Hebrew, Hungarian, Indonesian, Italian, Portuguese, Romanian, Slovak and Spanish. According to Wikipedia this sums up to 1.1 – 1.4 billion native speakers. Here is a map with the countries where at least one of these languages is a…