Click here to Skip to main content
15,887,485 members
This competition has ended

Best C++/MFC article of March 2010

Contribute to CodeProject and you'll automatically be in the running for a monthly prize!

Each month at CodeProject we gather together the best of the articles submitted the previous month and ask our readers to choose the best of the best. Entry is automatic - just submit you articke and we'll do the rest.

Check out the submission guidelines for information on posting articles.

Current Entries

Articles that match the contest criteria are automatically entered. The top 50 entries are shown.

Please Sign up or sign in to vote.
7 Mar 2010Luc Pattyn
This is an alternative to "Week Numbers According to ISO8601".
Please Sign up or sign in to vote.
22 Mar 2010PJ Arends
I have seen many different ways to check if the computer has an active internet connection. The best one, IMO, is to check for the presence of the default route in the IP forwarding table that is maintained by windows. This can be checked by using GetIPForwardTable function found in the...
Please Sign up or sign in to vote.
24 Mar 2010mdanh2002
On Windows Mobile, The Call Log API provides read-only access to the device call history via its PhoneOpenCallLog and PhoneGetCallLogEntry function. The .NET Compact Framework does not provide methods to access these APIs but OpenNetCF has a nice wrapper via its OpenNETCF.Phone...
Please Sign up or sign in to vote.
14 Aug 2010Ali BaderEddin
How to draw an oval using lines or fill it using triangles?
Please Sign up or sign in to vote.
15 Mar 2010Mahmudul Haque Azad
A simple trick to add to custom node to the XML commenting.in GhostDoc
Please Sign up or sign in to vote.
18 Mar 2010Mohammad Elsheimy
Learn how to create your CWinApp::OnIdle in C
Please Sign up or sign in to vote.
19 Mar 2010hjgode
iLock5, a tool to lock Windows mobile startup
Please Sign up or sign in to vote.
3 Mar 2010hjgode
The following is a nice? sample for an automation task. This batch will be executed every time a device connects to your PC via ActiveSync. You will need the itsutils.As you can read, the batch (script) first tries to check, if it has already been run on the device. This is done by looking...
Please Sign up or sign in to vote.
5 Mar 2010teebot
(or How to Retrieve a Type of Parent Control Using an Extension Method)Here's a situation where I had to retrieve the next Parent Control of a certain type.
Please Sign up or sign in to vote.
12 Mar 2010Martin Hinshelwood
Well, it depends….If you are a small company that creates a finite number of internal projects then you will find it easier to create a single project for each of your products and have TFS do the heavy lifting with reporting, SharePoint sites and Version Control.But what if you are not…Update
Please Sign up or sign in to vote.
12 Mar 2010Nizar Noorani
We recently ran into a challenging design issue at work...
Please Sign up or sign in to vote.
30 Mar 2010G. Filkov
VSS mass undo-checkout workaround.
Please Sign up or sign in to vote.
2 Apr 2010valdok
Custom exception handling. Fast, comprehensive, powerful
Please Sign up or sign in to vote.
28 Mar 2010tonywilk
Everyone knows GDI+ is generally slow in rendering, what is not so obvious is what combination of settings is the fastest.I have an app which renders a lot of items, which may be drawn or are bitmap-sourced 'sprites', onto a full page (usually 1024x768). The first attempts ran at around 3...
Please Sign up or sign in to vote.
15 Nov 2010Mathias S.
A generic MFC breadcrumb controller that shows a clickable breadcrumb list.
Please Sign up or sign in to vote.
21 Feb 2014John Hilton
See why your GPU is getting so hot.
Please Sign up or sign in to vote.
1 Apr 2010Mohammad Elsheimy
Learn how to record audio and play sound files in C and C#.
Please Sign up or sign in to vote.
21 Mar 2010Adam Roderick J
Test Automation software's code revealed with the help of mouse and keyboard hooking!!!
Please Sign up or sign in to vote.
28 Dec 2010Mohammad Elsheimy
Learn how to marshal compound types (structures, unions, etc.) in C#.
Please Sign up or sign in to vote.
17 Mar 2010Victor A. Milokum, Apriorit Inc
This article includes a description of a simple unhooker that restores original SST hooked by unknown rootkits, which hide some services and processes.
Please Sign up or sign in to vote.
22 Sep 2010shicheng
A fully featured and easy-to-use Windows HTTP wrapper in C++
Please Sign up or sign in to vote.
15 Mar 2010Fredrik Bornander
An article on how to create a simple log for debugging applications.
Please Sign up or sign in to vote.
28 Dec 2010Mohammad Elsheimy
Learn how to marshal simple types (integers, strings, etc.) in C#.
Please Sign up or sign in to vote.
23 Mar 2010All-In-One Code Framework
This example demonstrates how to check the privilege level of the current process, and how to self-elevate the process by giving explicit consent with the Consent UI.
Please Sign up or sign in to vote.
11 Mar 2010chevu 1 alternative  
I don't know whether these type of tips are allowed or not. But after having experience of core algorithm-base technical interview I thought I should share question I was asked in my interview.They asked me to show all methods I know to swap values of two variables.I Tried my level best...
Please Sign up or sign in to vote.
15 Mar 2010valdok
Log all that is necessary ONLY when really necessary.
Please Sign up or sign in to vote.
1 Mar 2010Roman Ginzburg
PGM is a transport layer protocol which interfaces directly with network layer using raw sockets. In this article, we will see how to implement a reliable multicast with PGM and WCF.
Please Sign up or sign in to vote.
6 Jan 2011Walter Capers
Using C to write a browser source editor.
Please Sign up or sign in to vote.
24 Mar 2010Amir Krifa
A C# wrapper for nearby Bluetooth devices discovery under Windows Mobile that uses a C++ DLL built based on the Winsock 2 API.
Please Sign up or sign in to vote.
29 Mar 2010Krasnikov, Eugene
Getting Started in Visio Add-On creation (VSL project)
Please Sign up or sign in to vote.
9 Feb 2013Ladislav Nevery
Let Google read your eBooks aloud or convert to MP3! This free TTS engine used by Android phone just sounds fantastic so here is a simple eBook reader app with C++ source code
Please Sign up or sign in to vote.
28 Dec 2010Mohammad Elsheimy
Introduction to marshaling
Please Sign up or sign in to vote.
22 Jun 2010gstolarov
Geocoding with SQL-Server
Please Sign up or sign in to vote.
2 Mar 2010Stefan_Lang
Header files often #include lots of other headers because other classes are being referenced. These chained includes force the compiler to repeatedly load and precompile long lists of headers over and over again. Thanks to #pragma directives or #ifdef guards this is a rather cheap operation,...
Please Sign up or sign in to vote.
23 Nov 2010Lampros Giampouras
Invisible, LSB based, image watermarking for Symbian.
Please Sign up or sign in to vote.
18 Mar 2010Mohammad Elsheimy
Convert colors to gray shades, detect Print Preview mode, and detect Black-and-White printers
Please Sign up or sign in to vote.
19 Mar 2010naveenonnet
The CrtDbg Library provides APIs which can be used to detect memory leaks
Please Sign up or sign in to vote.
4 May 2013ionutcelgroaznic
A simple target control to show us the direction of the enemy, useful especially for computer games
Please Sign up or sign in to vote.
2 Apr 2010Ali BaderEddin
Make drawing text in your OpenGL app as simple as calling printf
Please Sign up or sign in to vote.
2 Mar 2010Stefan_Lang
When incrementing or decrementing a variable, favor prefix operators over postfix operators if you do not need the value of the expression.Example:void foo(std::vector intvec){ for (std::vector::iterator it = intvec.begin(); it != intvec.end(); ++it) { // do something ...
Please Sign up or sign in to vote.
27 Mar 2010Martin Hinshelwood
Well, it depends….If you are a small company that creates a finite number of internal projects then you will find it easier to create a single project for each of your products and have TFS do the heavy lifting with reporting, SharePoint sites and Version Control.But what if you are not…Update
Please Sign up or sign in to vote.
9 Mar 2010Mehmet Salih Caliskan
Generic object wrapper for delayed type selection
Please Sign up or sign in to vote.
2 Mar 2010Stefan_Lang
When you compare a variable (a lvalue) to a constant (not a lvalue), always write the lvalue on the right hand side of the comparison.Bad example:if ( n == 5 ){ // do something}Good example:if ( 5 == n ){ // do something}This will help with your debugging in case...
Please Sign up or sign in to vote.
18 Mar 2010Mohammad Elsheimy
Which is better, to use BeginPaint/EndPaint, or to use GetDC/ReleaseDC?
Please Sign up or sign in to vote.
25 Mar 2010FireEmissary
Generic algorithm of the longest common subsequence
Please Sign up or sign in to vote.
15 Mar 2010Ahmed S. Hefny
The article describes how to implement reference counting in a C++ class that can be used like any pointer
Please Sign up or sign in to vote.
30 Mar 2010ingvar8
c8051 module for Frequency inverter
Please Sign up or sign in to vote.
29 Mar 2010Nataraj1978
Workaround for toolbar docking issue in VC6 applications
Please Sign up or sign in to vote.
3 Mar 2010EricF
Download sourceThe ProblemI always found unpleasant to change dynamically the layout of a form or a dialog. In these cases, we had to call SetWindowPos or MoveWindow on each control of the form. We had to calculate manually the position of each controls on the form too.The...
Please Sign up or sign in to vote.
4 Mar 2010ima_c++_programmer
This is a utility to compress files in a self extracting binary. The self extracting binary can be used without any installation on any system to extract files from it.

Current Participants

Those with articles that match the contest criteria are automatically entered.

Software Developer (Senior) Philips HealthCare
India India
I am always looking for new technical challenges.
If you face it, contact me, I will solve it.
Instructor / Trainer Cairo University
Egypt Egypt
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Software Developer
United States United States
https://open-gl.com
Microsoft All-In-One Code Framework delineates the framework and skeleton of Microsoft development techniques through typical sample codes in three popular programming languages (Visual C#, VB.NET, Visual C++). Each sample is elaborately selected, composed, and documented to demonstrate one frequently-asked, tested or used coding scenario based on our support experience in MSDN newsgroups and forums. If you are a software developer, you can fill the skeleton with blood, muscle and soul. If you are a software tester or a support engineer like us, you may extend the sample codes a little to fit your specific test scenario or refer your customer to this project if the customer's question coincides with what we collected.
http://cfx.codeplex.com/
Software Developer (Senior) Alcmeon
France France
http://fr.linkedin.com/in/amirkrifa
Software Developer
India India
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Software Developer (Senior) Clemex Technologies Inc.
Canada Canada
Specialization : OO design, Ergonomic based user interfaces.
Language Used : C#, C++, C, MFC, ATL, COM, GDI+, .NET, etc...
China China
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Software Developer (Senior)
Sweden Sweden
Article videos
Oakmead Apps Android Games

21 Feb 2014: Best VB.NET Article of January 2014 - Second Prize
18 Oct 2013: Best VB.NET article of September 2013
23 Jun 2012: Best C++ article of May 2012
20 Apr 2012: Best VB.NET article of March 2012
22 Feb 2010: Best overall article of January 2010
22 Feb 2010: Best C# article of January 2010
Canada Canada
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
http://www.GaspMobileGames.com
United States United States
Writing code since 1987 using whatever language/environment you can imagine. Recently got into the mobile games. Feel free to check them out at http://www.GaspMobileGames.com
Germany Germany
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Software Developer (Senior) FIS
India India
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Estonia Estonia
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Software Developer
Romania Romania
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Founder Spatial Freedom
Australia Australia
Software engineer, mechanical engineer, electronics engineer, inventor, manager, entrepreneur, husband, father, friend.
B.Sc. B.E.(Hons) M.Eng.Sc.
Some things I've done
- Invented the Spaceball(R)/1983 and Astroid(R)/2002 3D mice
- Patents: 3D mouse, data compression, acoustic transducer
- Wrote animation software in mid 1980s for TV commercials
- Wrote a basic CAD drawing program in 1980s
- Lived in Boston, Massachusetts for 11 years
- Architected and managed full custom ASIC chip
- Reviewed bionic eye technology for investment purposes
- Product development on CPR aid for heart attacks
- Developed an electronic sports whistle
- Was actually stranded on a deserted Pacific island
- Software: lots - embedded, device driver, applications
Some things I want to do
- Develop more cool hardware/software products
- Solve the 3D mouse software barrier to proliferate 3D mice
- Help bring 3D to the masses
- Help others
Software Developer
Ukraine Ukraine
Ordinary C++,C# developer
Software Developer (Senior)
Slovakia Slovakia
Past Projects:
[Siemens.sk]Mobile network software: HLR-Inovation for telering.at (Corba)
Medical software: CorRea module for CT scanner
[cauldron.sk]Computer Games:XboxLive/net code for Conan, Knights of the temple II, GeneTroopers, CivilWar, Soldier of fortune II
[www.elveon.com]Computer Games:XboxLive/net code for Elveon game based on Unreal Engine 3
ESET Reasearch.
Looking for job
Software Developer
Greece Greece
Physicist/SW Engineer
Software Developer (Senior)
Belgium Belgium
I am an engineer with a background in electronics, software and mathematics.

I develop technical software, both for embedded systems and for desktop equipment. This includes operating systems, communication software, local networks, image processing, machine control, automation, etc.

I have been using all kinds of microcontrollers and microprocessors (Intel 4004/8080/8051/80386/Pentium, Motorola 680x/680x0/ColdFire/PowerPC, Microchip PIC, Altera NIOS, and many more), lots of programming languages (all relevant assemblers, Fortran, Basic, C, Java, C#, and many more), and different operating systems (both proprietary and commercial).

For desktop applications and general development tools I have been using both UNIX systems and Mac/MacOS for many years, but I have switched to x86-based PCs with Windows, Visual Studio and the .NET Framework several years ago.

I specialize in:
- cross-platform development (making software that runs on diverse hardware/OS combinations)
- instruction set simulation
- improving software performance, i.e. making sure the software runs the job at hand in as short a time as possible on the given hardware. This entails algorithm selection, implementation design, accurate measurements, code optimisation, and sometimes implementing virtual machines, applying SIMD technology (such as MMX/SSE), and more.
Software Developer (Senior) Vizrt Bangladesh
Bangladesh Bangladesh
I am truly versatile and 360 degree Engineer having wide range of development experience in .NET and Java Platform. I am also proficient in system level programming in C++. To me technology is not at all a problem, it’s the client requirement that matters! That is I am ready and comfortable to use any technology to make the business of my client a success.

In my five years of experience I have the opportunities to work for fortune 500 companies of US and many renowned clients from Europe.

My Linkedin Profile: http://bd.linkedin.com/in/mahmudazad
Instructor / Trainer naked ALM
United States United States

About the Author: Martin has worked with many customers in government, finance, manufacturing, health and technology to help them improve their processes and deliver more. He provides management and technical consulting that intends to expose processes and practices to gain transparency, uncover impediments to value delivery and reduce cycle-time as part of an organisations path to agility. Martin is a Professional Scrum Trainer as well as a Visual Studio ALM MVP and Visual Studio ALM Ranger. He writes regularly on http://nakedalm.com/blog, and speaks often on Scrum, good practices and Visual Studio ALM.


You can get in touch with Martin through naked ALM.

Software Developer (Senior)
Sweden Sweden
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Software Developer Metus Technology
Turkey Turkey
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Technical Writer
Singapore Singapore
Since 2008, ToughDev has been publishing technical sharing articles on a wide range of topics from software development to electronics design. Our interests include, but are not limited to, Android/iOS programming, VoIP products, embedded design using Arduino/PIC microcontrollers, reverse-engineering, retro-computing, and many others. We also perform product reviews, both on new and vintage products, and share our findings with the community. In addition, our team also develops customized software/hardware solutions highly adapted to suit your needs. Contact us for more information.
Technical Lead
Egypt Egypt
Mohammad Elsheimy is a developer, trainer, and technical writer currently hired by one of the leading fintech companies in Middle East, as a technical lead.

Mohammad is a MCP, MCTS, MCPD, MCSA, MCSE, and MCT expertized in Microsoft technologies, data management, analytics, Azure and DevOps solutions. He is also a Project Management Professional (PMP) and a Quranic Readings college (Al-Azhar) graduate specialized in Quranic readings, Islamic legislation, and the Arabic language.

Mohammad was born in Egypt. He loves his machine and his code more than anything else!

Currently, Mohammad runs two blogs: "Just Like [a] Magic" (http://JustLikeAMagic.com) and "مع الدوت نت" (http://WithdDotNet.net), both dedicated for programming and Microsoft technologies.

You can reach Mohammad at elsheimy[at]live[dot]com
Team Leader GE Intelligent Platforms
India India
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Team Leader Kony, Hyderabad
India India
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Software Developer (Senior) NCube, Inc.
United States United States
Nizar Noorani is an independent software consultant. He provides services in the areas of web applications and systems architecture, analysis, design and development. Although proficient in a variety of technologies, he specializes in the .NET technology. He can be reached at nizar.noorani@gmail.com.
President
Canada Canada
Father of two, brother of two, child of two.
Spouse to one, uncle to many, friend to lots.
Farmer, carpenter, mechanic, electrician, but definitely not a plumber.
Likes walks with the wife, board games, card games, travel, and camping in the summer.
High school graduate, college drop-out.
Hobby programmer who knows C++ with MFC and the STL.
Has dabbled with BASIC, Pascal, Fortran, COBOL, C#, SQL, ASM, and HTML.
Realized long ago that programming is fun when there is nobody pressuring you with schedules and timelines.
Software Developer (Senior)
Israel Israel
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Software Developer Philips
China China
Cheng Shi is a software developer in China. He is interested in COM, ATL, Direct3D, etc. He is now working for Philips.

Cheng Shi loves Formula1 and watchs every Grand Prix. He is dreaming to be a racing car driver. Hope his dream can come true.
Software Developer (Senior)
Switzerland Switzerland
Graduated at TU Darmstadt in Math & CS, with a heavy focus on CAD/CAM

Programming and designing applications in C++ in the areas AI, real-time programming, client-server applications and CAD/CAM since 1985.

Personal interests: AI, computer graphics, games, reading
Software Developer Logica
Belgium Belgium
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Founder
United Kingdom United Kingdom
Developer in just about anything from 6502 machine code thru C, C++ and now things like PHP and javascript. Used to develop hardware and still dabble with electronics and ham radio when I'm not letting off pyrotechnics, shooting or flying my VPM M16 gyroplane.
Software Developer (Senior)
Israel Israel
My name is Vladislav Gelfer, I was born in Kiev (former Soviet Union), since 1993 I live in Israel.
In programming I'm interested mostly in low-level, OOP design, DSP and multimedia.
Besides of the programming I like physics, math, digital photography.
Ukraine Ukraine
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
Architect
United States United States
Currently I am a Software Architect for Compuware specializing in software security
Languages: C/C++, FORTRAN, COBOL, Java
Libraries: OpenGL, MFC, X11 (X-Windows), WIN32

Platform Experience: AIX, HP-UX, SunOS, Open VMS, AS400, OSF, AIX, SGI, Linux, Windows CE, Windows

I have a strong background in 3D graphics programming, TCP/IP development, threading, cross platform development, encryption and secured communications, and system level programming.

In the early years before OpenGL made its way to the PC world, I authored one of the first high performance double buffered 3D graphics engines that supported both DOS and Windows providing real time 3D graphics for Engineering Technology Associate’s Finite Element Model Builder, FEMB. You can see their products at www.eta.com.

I also hold a US patent http://www.patentstorm.us/patents/6894690.html
You must sign in to participate in this contest.
This contest has ended.
1 Mar - 31 Mar 2010