{"id":616,"date":"2010-07-04T14:46:57","date_gmt":"2010-07-04T12:46:57","guid":{"rendered":"http:\/\/mariusbancila.ro\/blog\/"},"modified":"2024-03-04T22:00:54","modified_gmt":"2024-03-04T20:00:54","slug":"myarticles","status":"publish","type":"page","link":"https:\/\/mariusbancila.ro\/blog\/myarticles\/","title":{"rendered":"Works"},"content":{"rendered":"<p>This page lists most of my works, including articles, projects, relevant sample codes, talks and others.<\/p>\n<h2>Books<\/h2>\n<table border=\"0\">\n<tbody>\n<tr><\/tr>\n<tr>\n<td><a href=\"http:\/\/mariusbancila.ro\/blog\/2017\/05\/09\/my-book-modern-cpp-programming-cookbook-has-been-published\/\">Modern C++ Programming Cookbook<\/a><br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/2017\/05\/09\/my-book-modern-cpp-programming-cookbook-has-been-published\/\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-2444\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/05\/mcpccover-243x300.png\" alt=\"\" width=\"243\" height=\"300\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/05\/mcpccover-243x300.png 243w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/05\/mcpccover-768x948.png 768w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/05\/mcpccover.png 810w\" sizes=\"auto, (max-width: 243px) 100vw, 243px\" \/><\/a><\/td>\n<td><a href=\"https:\/\/mariusbancila.ro\/blog\/2020\/09\/16\/the-2nd-edition-of-modern-cpp-programming-cookbook-has-been-published\/\">Modern C++ Programming Cookbook, 2nd Edition<\/a><br \/>\n<a href=\"https:\/\/mariusbancila.ro\/blog\/2020\/09\/16\/the-2nd-edition-of-modern-cpp-programming-cookbook-has-been-published\/\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2020\/09\/cookbook2ndlarge.jpg\" alt=\"\" width=\"249\" height=\"300\"><\/a><\/td>\n<td><a href=\"https:\/\/mariusbancila.ro\/blog\/2024\/03\/04\/modern-cpp-programming-cookbook-third-edition\/\">Modern C++ Programming Cookbook, 3rd Edition<\/a><br \/>\n<a href=\"https:\/\/mariusbancila.ro\/blog\/2024\/03\/04\/modern-cpp-programming-cookbook-third-edition\/\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2024\/03\/moderncpp3rdmedium.jpg\" alt=\"\" width=\"249\" height=\"300\"><\/a><\/td>\n<\/tr>\n<tr>\n<td><a href=\"https:\/\/mariusbancila.ro\/blog\/2022\/08\/19\/my-book-template-metaprogramming-with-cpp-is-now-available\/\">Template Metaprogramming with C++<\/a><br \/>\n<a href=\"https:\/\/mariusbancila.ro\/blog\/2022\/08\/19\/my-book-template-metaprogramming-with-cpp-is-now-available\/\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2022\/08\/templatesbookcover.jpg\" alt=\"\" width=\"241\" height=\"300\"><\/a><\/td>\n<td><a href=\"https:\/\/mariusbancila.ro\/blog\/2018\/05\/25\/my-book-the-modern-c-challenge-has-been-published\/\">The Modern C++ Challenge<\/a><br \/>\n<a href=\"https:\/\/mariusbancila.ro\/blog\/2018\/05\/25\/my-book-the-modern-c-challenge-has-been-published\/\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2018\/05\/cppchallenge-241x300-1.jpg\" alt=\"\" width=\"241\" height=\"300\"><\/a><\/td>\n<td><a href=\"https:\/\/mariusbancila.ro\/blog\/2020\/05\/05\/my-book-learn-cs-programming-has-been-published\/\">Learn C# Programming<\/a><br \/>\n<a href=\"https:\/\/mariusbancila.ro\/blog\/2020\/05\/05\/my-book-learn-cs-programming-has-been-published\/\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2020\/04\/learncsprogramming.jpg\" alt=\"\" width=\"241\" height=\"300\"><\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Talks<\/h2>\n<ul>\n<li><a href=\"https:\/\/190744-1236024-raikfcquaxqncofqfm.stackpathdns.com\/wp-content\/uploads\/2020\/03\/C-libraries-for-daily-use.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">CppEurope 2020: C++ libraries for daily use<\/a><\/li>\n<li><a href=\"https:\/\/mariusbancila.ro\/blog\/download\/3777\/\" target=\"_blank\" rel=\"noopener noreferrer\">ApexVox 2.0: Things you did not know about C# and .NET<\/a><\/li>\n<li><a href=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2019\/03\/Writing-better-C-code.pdf\">ApexVox 1.0: Writing Better C# code<\/a><\/li>\n<li><a href=\"https:\/\/cppeurope.com\/wp-content\/uploads\/2019\/03\/Consistent-comparison-in-C20.pdf\">CppEurope 2019: Consistent Comparison in C++20<\/a><\/li>\n<li><a href=\"https:\/\/cppeurope.com\/wp-content\/uploads\/2018\/02\/Marius_Bancila_Modernizing-legacy-C-code.pdf\">CppEurope 2018: Modernizing legacy C++ code<\/a><\/li>\n<li><a href=\"http:\/\/codecamp.ro\/archive\/20171014-Timisoara\/#agenda\">CodeCamp Timisoara 2017: Add intelligent features to your apps using Microsoft Cognitive Services<\/a><\/li>\n<li><a href=\"http:\/\/ronua.ro\/CS\/groups\/ronua-timisoara\/default.aspx\">Ronua Timisoara 2011: Developing Silverlight Applications for Windows Phone 7<\/a><\/li>\n<li><a href=\"http:\/\/codecamp.ro\/post\/2010\/11\/01\/Conferinta-Codecamp-de-toamna-la-Timisoara-e28093-30-noiembrie.aspx\">CodeCamp Timisoara 2010: Parallel Computing with .NET 4.0 and Visual Studio 2010<\/a><\/li>\n<li><a href=\"http:\/\/mariusbancila.ro\/blog\/2010\/07\/18\/resources-for-the-f-presentation-at-ronua-roadshow\/\">Ronua Timisoara 2010: Introduction to F#<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=32\">Ronua Timisoara 2010: What&#8217;s New in Visual Studio 2010 for VisualC++<\/a><\/li>\n<\/ul>\n<h2>Articles<\/h2>\n<p><b>English Articles<\/b><\/p>\n<ul>\n<li><a href=\"https:\/\/www.codeproject.com\/Articles\/1234217\/Using-Cognitive-Services-to-find-your-Game-of-Thro\" target=\"_blank\" rel=\"noopener noreferrer\">Using Cognitive Services to find your Game of Thrones look-alike<\/a><\/li>\n<li><a href=\"https:\/\/www.codeproject.com\/Articles\/1199546\/Interoping-NET-and-Cplusplus-through-registration\" target=\"_blank\" rel=\"noopener noreferrer\">Interoping .NET and C++ through COM<\/a><\/li>\n<li><a href=\"https:\/\/www.codeproject.com\/Articles\/1195963\/Interoping-NET-and-Cplusplus-through-COM\" target=\"_blank\" rel=\"noopener noreferrer\">Interoping .NET and C++ through registration-free COM<\/a><\/li>\n<li><a href=\"https:\/\/www.codeproject.com\/Articles\/1181455\/A-CMake-tutorial-for-Visual-Cplusplus-developers\" target=\"_blank\" rel=\"noopener noreferrer\">A CMake tutorial for Visual C++ developers<\/a><\/li>\n<li><a href=\"https:\/\/www.codeproject.com\/Articles\/1098263\/Interact-with-Windows-services-in-Cplusplus\" target=\"_blank\" rel=\"noopener noreferrer\">Interact with Windows services in C++<\/a><\/li>\n<li><a href=\"https:\/\/www.codeproject.com\/Articles\/1105945\/Embedding-a-Chromium-browser-in-an-MFC-application\" target=\"_blank\" rel=\"noopener noreferrer\">Embedding a Chromium browser in an MFC application<\/a><\/li>\n<li><a href=\"https:\/\/www.codeproject.com\/Articles\/853536\/Modernizing-Legacy-Cplusplus-Code\" target=\"_blank\" rel=\"noopener noreferrer\">Modernizing Legacy C++ Code<\/a><\/li>\n<li><a href=\"https:\/\/www.codeproject.com\/Articles\/989752\/Integrate-Windows-Azure-Face-APIs-in-a-Cplusplus-a\" target=\"_blank\" rel=\"noopener noreferrer\">Integrate Windows Azure Face APIs in a C++ application<\/a><\/li>\n<li><a href=\"https:\/\/www.codeproject.com\/Articles\/1035313\/Cplusplus-is-fun-tips-and-tricks\" target=\"_blank\" rel=\"noopener noreferrer\">C++ is fun: tips and tricks<\/a><\/li>\n<li><a href=\"https:\/\/www.codeproject.com\/Articles\/835025\/Enabling-MFC-collections-to-work-in-range-based-fo\" target=\"_blank\" rel=\"noopener noreferrer\">Enabling MFC collections to work in range-based for loops<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/699997\/Creating-Windows-Store-Live-Tiles-with-The\" target=\"_blank\" rel=\"noopener noreferrer\">Creating Windows Store Live Tiles with The TileNotifications Pack<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/654343\/Authoring-and-consuming-classic-COM-components-wit\" target=\"_blank\" rel=\"noopener noreferrer\">Authoring and consuming classic COM components with WRL<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/678078\/Cplusplus-is-fun-Writing-a-Tic-Tac-Toe-Game\" target=\"_blank\" rel=\"noopener noreferrer\">C++ is fun: Writing a Tic Tac Toe Game<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/663443\/Cplusplus-is-fun-optimal-alphabetical-order\" target=\"_blank\" rel=\"noopener noreferrer\">C++ is fun: optimal alphabetical order<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/632831\/Whats-new-in-Visual-Studio-2013-for-native-develop\" target=\"_blank\" rel=\"noopener noreferrer\">What&#8217;s new in Visual Studio 2013 for native development<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/598695\/Cplusplus11-threads-locks-and-condition-variables\" target=\"_blank\" rel=\"noopener noreferrer\">C++11 threads, locks and condition variables<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/570638\/Ten-Cplusplus11-Features-Every-Cplusplus-Developer\" target=\"_blank\" rel=\"noopener noreferrer\">Ten C++11 Features Every C++ Developer Should Use<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/562386\/Lessons-learned-migrating-to-Visual-Studio-2012-an\" target=\"_blank\" rel=\"noopener noreferrer\">Lessons learned migrating to Visual Studio 2012 and .NET 4.5<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/518159\/10-Even-More-Visual-Studio-Debugging-Tips-for-Nati\" target=\"_blank\" rel=\"noopener noreferrer\">10 Even More Visual Studio Debugging Tips for Native Development<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/488177\/cpplinq-LINQ-Query-Operators-for-Cplusplus-Sequenc\" target=\"_blank\" rel=\"noopener noreferrer\">cpplinq &#8211; LINQ Query Operators for C++ Sequences<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/469416\/10-More-Visual-Studio-Debugging-Tips-for-Native-De\" target=\"_blank\" rel=\"noopener noreferrer\">10 More Visual Studio Debugging Tips for Native Development<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/462746\/A-Cplusplus-SHA1-and-MD5-Implementation-with-Crypt\" target=\"_blank\" rel=\"noopener noreferrer\">A C++ SHA1 and MD5 Implementation with CryptoAPI<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/453778\/Loading-Assemblies-from-Anywhere-into-a-New-AppDom\" target=\"_blank\" rel=\"noopener noreferrer\">Loading Assemblies from Anywhere into a New AppDomain<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/361223\/Whats-New-in-VS11-for-Native-Development\" target=\"_blank\" rel=\"noopener noreferrer\">Authoring Documentation with DocProject and Sandcastle<\/a><\/li>\n<li><a href=\"http:\/\/www.codeproject.com\/Articles\/361223\/Whats-New-in-VS11-for-Native-Development\" target=\"_blank\" rel=\"noopener noreferrer\">What&#8217;s New in VS11 for Native Development<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/article.php\/c19093\/\" target=\"_blank\" rel=\"noopener noreferrer\">C++ 2011: nullptr<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/article.php\/c19083\/\" target=\"_blank\" rel=\"noopener noreferrer\">C++ 2011: Strongly-typed Enums<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/article.php\/c19081\/\" target=\"_blank\" rel=\"noopener noreferrer\">C++ 2011: Uniform Initialization<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/.net\/net_silverlight\/article.php\/c18445\/\" target=\"_blank\" rel=\"noopener noreferrer\">Windows Phone 7 Quick Tutorials: Part 7 &#8211; Touch<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/.net\/net_silverlight\/article.php\/c18419\/\" target=\"_blank\" rel=\"noopener noreferrer\">Windows Phone 7 Quick Tutorials: Part 6 &#8211; Launchers and Choosers<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/.net\/net_silverlight\/article.php\/c18413\/\" target=\"_blank\" rel=\"noopener noreferrer\">Windows Phone 7 Quick Tutorials: Part 5 &#8211; Pivot and Panorama<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/.net\/net_silverlight\/article.php\/c18397\/\" target=\"_blank\" rel=\"noopener noreferrer\">Windows Phone 7 Quick Tutorials: Part 4 &#8211; Tombstoning and Data Persistence<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/.net\/net_silverlight\/article.php\/c18389\/\" target=\"_blank\" rel=\"noopener noreferrer\">Windows Phone 7 Quick Tutorials: Part 3 &#8211; Page Navigation<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/.net\/net_silverlight\/article.php\/c18375\/\" target=\"_blank\" rel=\"noopener noreferrer\">Windows Phone 7 Quick Tutorials: Part 2 &#8211; The Application Bar<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/.net\/net_silverlight\/article.php\/c18349\/\" target=\"_blank\" rel=\"noopener noreferrer\">Windows Phone 7 Quick Tutorials: Part 1 &#8211; Hello World<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/article.php\/c17957\/\" target=\"_blank\" rel=\"noopener noreferrer\">Text Templates in Microsoft Visual Studio<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/Cpp\/STL\/article.php\/c16693\/\" target=\"_blank\" rel=\"noopener noreferrer\">Lambdas in VC++ 2010<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/cpp_mfc\/article.php\/c17021\/\" target=\"_blank\" rel=\"noopener noreferrer\">Changes to MFC in Microsoft Visual Studio 2010<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/article.php\/c17009\/\" target=\"_blank\" rel=\"noopener noreferrer\">Changes to the C++ Compiler in Microsoft Visual Studio 2010<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/v-s\/article.php\/c17001\/\" target=\"_blank\" rel=\"noopener noreferrer\">Changes to VC++ in Microsoft Visual Studio 2010<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/csharp\/cs_misc\/security\/article.php\/c16491\/\" target=\"_blank\" rel=\"noopener noreferrer\">Working with Digital Certificates in .NET<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/.net\/net_wpf\/article.php\/c16387\/\" target=\"_blank\" rel=\"noopener noreferrer\">Opening Modal Managed Windows from MFC<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/csharp\/cs_network\/internetweb\/article.php\/c16167\/\" target=\"_blank\" rel=\"noopener noreferrer\">Code Contracts in .NET<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/misc\/misc\/graphics\/article.php\/c15585\/\" target=\"_blank\" rel=\"noopener noreferrer\">Working with Device Contexts in MFC<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/w-d\/dislog\/dialog-basedapplications\/article.php\/c15569\/\" target=\"_blank\" rel=\"noopener noreferrer\">Customizable Alert Window<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/cpp_mfc\/stl\/article.php\/c15361\/\" target=\"_blank\" rel=\"noopener noreferrer\">A TR1 Tutorial: Smart Pointers<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/cpp_mfc\/stl\/article.php\/c15339\/\" target=\"_blank\" rel=\"noopener noreferrer\">A TR1 Tutorial: Regular Expressions<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/cpp_mfc\/stl\/article.php\/c15319\/\" target=\"_blank\" rel=\"noopener noreferrer\">A TR1 Tutorial: Generating Random Numbers<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/cpp_mfc\/stl\/article.php\/c15303\/\" target=\"_blank\" rel=\"noopener noreferrer\">A TR1 Tutorial: Unordered Containers<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/cpp_mfc\/stl\/article.php\/c15287\/\" target=\"_blank\" rel=\"noopener noreferrer\">A TR1 Tutorial: Class std::tr1::tuple<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/cpp_mfc\/stl\/article.php\/c15257\/\" target=\"_blank\" rel=\"noopener noreferrer\">A TR1 Tutorial: Class std::tr1::array<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/controls\/editctrl\/backgroundcolor\/article.php\/c14941\/\" target=\"_blank\" rel=\"noopener noreferrer\">Edit Control with Icon and Background Text<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/cpp_mfc\/tutorials\/article.php\/c14929\/\" target=\"_blank\" rel=\"noopener noreferrer\">MFC Feature Pack: An Introduction <\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/csharp\/net30\/article.php\/c13799\/\" target=\"_blank\" rel=\"noopener noreferrer\">Introduction to LINQ, Part 3: LINQ to SQL<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/csharp\/net30\/article.php\/c13715\/\" target=\"_blank\" rel=\"noopener noreferrer\">Introduction to LINQ, Part 2: LINQ to XML<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/csharp\/net30\/article.php\/c13699\/\" target=\"_blank\" rel=\"noopener noreferrer\">Introduction to LINQ, Part 1: LINQ to Objects<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/misc\/misc\/system\/article.php\/c13407\/\" target=\"_blank\" rel=\"noopener noreferrer\">Customize Places Bar in Common File Dialog<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/string\/general\/article.php\/c13267\/\" target=\"_blank\" rel=\"noopener noreferrer\">Prefer std::string to char*<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/v-s\/devstudio_macros\/customappwizards\/article.php\/c12775\/\" target=\"_blank\" rel=\"noopener noreferrer\">Create a Visual C++ Wizard for Visual Studio 2005<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/cpp_mfc\/classes\/article.php\/c12669\/\" target=\"_blank\" rel=\"noopener noreferrer\">Animate a Modal Dialog<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/csharp\/cs_misc\/userinterface\/article.php\/c12227\/\" target=\"_blank\" rel=\"noopener noreferrer\">Add Simple Animations to Your WPF Application with Timelines<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/csharp\/cs_misc\/userinterface\/article.php\/c12221\/\" target=\"_blank\" rel=\"noopener noreferrer\">WPF 2D Transformations<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/csharp\/cs_misc\/userinterface\/article.php\/c12205\/\" target=\"_blank\" rel=\"noopener noreferrer\">Creating a Simple Calculator with Microsoft Expression Interactive Designer<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/csharp\/cs_misc\/userinterface\/article.php\/c12079\/\" target=\"_blank\" rel=\"noopener noreferrer\">Getting Acquainted with the Microsoft Expression Family<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/csharp\/csharp\/cs_misc\/userinterface\/article.php\/c12001\/\" target=\"_blank\" rel=\"noopener noreferrer\">Back to the Future of Windows Applications<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/com-tech\/complus\/general\/article.php\/c11529\/\" target=\"_blank\" rel=\"noopener noreferrer\">A Kick-Start to SAX with C++, Part 3<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/com-tech\/complus\/general\/article.php\/c11525\/\" target=\"_blank\" rel=\"noopener noreferrer\">A Kick-Start to SAX with C++, Part 2<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/data\/mfc_database\/xml\/article.php\/c11517\/\" target=\"_blank\" rel=\"noopener noreferrer\">A Kick-Start to SAX with C++, Part 1<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/cpp_managed\/general\/article.php\/c10881\/\" target=\"_blank\" rel=\"noopener noreferrer\">Introduction to C++\/CLI Generics<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/Cpp\/Cpp\/cpp_managed\/general\/article.php\/c10653\" target=\"_blank\" rel=\"noopener noreferrer\">Writing Code in a Natural Way with C++\/CLI<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/cpp\/cpp_mfc\/callbacks\/article.php\/c10557\/\" target=\"_blank\" rel=\"noopener noreferrer\">Callback Functions Tutorial<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/Cpp\/misc\/misc\/multi-lingualsupport\/article.php\/c10451\/\" target=\"_blank\" rel=\"noopener noreferrer\">The Basics of UTF-8<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/Cpp\/data\/data-misc\/values\/article.php\/c10243\/\" target=\"_blank\" rel=\"noopener noreferrer\">War of the Worlds: Endianness<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/Cpp\/misc\/samples\/basicprogramming\/article.php\/c10043\/\" target=\"_blank\" rel=\"noopener noreferrer\">The Principle of the Procrustean Bed in Programming<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/Cpp\/controls\/editctrl\/maskededitcontrols\/article.php\/c9771\/\" target=\"_blank\" rel=\"noopener noreferrer\">Customizable Masked Edit Control<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/Cpp\/W-P\/win32\/tutorials\/article.php\/c9535\" target=\"_blank\" rel=\"noopener noreferrer\">Inside CRT: Debug Heap Management<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/Cpp\/W-P\/system\/hardwareinformation\/article.php\/c9087\/\" target=\"_blank\" rel=\"noopener noreferrer\">Three Ways to Retrieve Processor Information<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/Cpp\/controls\/imagelist\/openfaq\/article.php\/c9045\/\" target=\"_blank\" rel=\"noopener noreferrer\">True Color Image List<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/misc\/misc\/system\/article.php\/c8973\/\" target=\"_blank\" rel=\"noopener noreferrer\">Determine Windows Version and Edition<\/a><\/li>\n<li><a href=\"http:\/\/www.codeguru.com\/cpp\/controls\/buttonctrl\/advancedbuttons\/article.php\/c8395\/\" target=\"_blank\" rel=\"noopener noreferrer\">Enhanced Colored Button<\/a><\/li>\n<\/ul>\n<p><b>Romanian Articles<\/b><\/p>\n<ul>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=45\" target=\"_blank\" rel=\"noopener noreferrer\">Definirea platformei x64 pentru proiecte VC++<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=35\" target=\"_blank\" rel=\"noopener noreferrer\">T4 in Visual C++<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=32\" target=\"_blank\" rel=\"noopener noreferrer\">Noutati in Visual Studio 2010 pentru Visual C++<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=30\" target=\"_blank\" rel=\"noopener noreferrer\">Expresii lambda in C++<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=27\" target=\"_blank\" rel=\"noopener noreferrer\">Dialog de fisiere modificat cu controale aditionale<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=26\" target=\"_blank\" rel=\"noopener noreferrer\">Noutati in Visual Studio 2010 pentru programarea nativa<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=24\" target=\"_blank\" rel=\"noopener noreferrer\">Fereastra de notificari<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=18\" target=\"_blank\" rel=\"noopener noreferrer\">Pointeri smart in TR1<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=17\" target=\"_blank\" rel=\"noopener noreferrer\">Expresii regulate in TR1<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=16\" target=\"_blank\" rel=\"noopener noreferrer\">Generatoarele de numere aleatoare din TR1<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=15\" target=\"_blank\" rel=\"noopener noreferrer\">Containere neordonate in TR1<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=14\" target=\"_blank\" rel=\"noopener noreferrer\">Clasa tuple din TR1<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=13\" target=\"_blank\" rel=\"noopener noreferrer\">Clasa array din TR1<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=12\" target=\"_blank\" rel=\"noopener noreferrer\">Edit control cu icoana si text indicator<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=7\" target=\"_blank\" rel=\"noopener noreferrer\">Managementul memoriei intr-o configuratie de Debug<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=6\" target=\"_blank\" rel=\"noopener noreferrer\">Un control edit mascabil<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=5\" target=\"_blank\" rel=\"noopener noreferrer\">Animarea unui dialog modal<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=4\" target=\"_blank\" rel=\"noopener noreferrer\">Prefera std::string lui char*<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=3\" target=\"_blank\" rel=\"noopener noreferrer\">Noutati in MFC 9.0<\/a><\/li>\n<li><a href=\"http:\/\/www.codexpert.ro\/articole.php?id=1\" target=\"_blank\" rel=\"noopener noreferrer\">Determinare versiune si editie de Windows<\/a><\/li>\n<\/ul>\n<h2>Open-source Projects<\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/mariusbancila\/stduuid\" target=\"_blank\" rel=\"noopener noreferrer\">stduuid<\/a><br \/>\nA C++ cross-platform implementation for UUIDs<\/li>\n<li><a href=\"https:\/\/github.com\/mariusbancila\/croncpp\" target=\"_blank\" rel=\"noopener noreferrer\">croncpp<\/a><br \/>\nA C++17 header-only cross-platform library for handling CRON expressions<\/li>\n<li><a href=\"https:\/\/github.com\/mariusbancila\/moneycpp\" target=\"_blank\" rel=\"noopener noreferrer\">moneycpp<\/a><br \/>\nA C++ library for handling monetary values<\/li>\n<li><a href=\"https:\/\/github.com\/mariusbancila\/cppconlib\" target=\"_blank\" rel=\"noopener noreferrer\">cppconlib<\/a><br \/>\nA header-only C++ template library for manipulating the settings of a Windows console (colors, text position, input mode, etc.)<\/li>\n<li><a href=\"https:\/\/github.com\/mariusbancila\/mfccollectionutilities\" target=\"_blank\" rel=\"noopener noreferrer\">mfccollectionutilities<\/a><br \/>\nA small library that enables developers to use MFC containers (arrays, lists, maps) with range-based for loops.<\/li>\n<li><a href=\"http:\/\/cpplinq.codeplex.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">cpplinq<\/a><br \/>\nA template library that provides LINQ-like operators for querying collections (arrays and STL containers) in C++11.<\/li>\n<\/ul>\n<h2>Tools<\/h2>\n<ul>\n<li><a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=MariusBancila.memefulcomments\">Memeful Comments<\/a>Visual Studio extension that enables displaying images, including animated GIFs, throughout source code from an tag.<\/li>\n<li><a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=MariusBancila.VSBuildStatus\">VSBuildStatus<\/a><br \/>\nVisual Studio add-in, displays the status of a build\/clean\/deploy operation<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>This page lists most of my works, including articles, projects, relevant sample codes, talks and others. Books Modern C++ Programming Cookbook Modern C++ Programming Cookbook, 2nd Edition Modern C++ Programming Cookbook, 3rd Edition Template Metaprogramming with C++ The Modern C++ Challenge Learn C# Programming Talks CppEurope 2020: C++ libraries for daily use ApexVox 2.0: Things &#8230; <a title=\"Works\" class=\"read-more\" href=\"https:\/\/mariusbancila.ro\/blog\/myarticles\/\" aria-label=\"Read more about Works\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":2,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","advgb_blocks_editor_width":"","advgb_blocks_columns_visual_guide":"","footnotes":""},"class_list":["post-616","page","type-page","status-publish"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"A list of the articles, projects and other works of mine..\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"keywords\" content=\"articles,codeguru,codexpert,faq,projects,games,plugins\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/mariusbancila.ro\/blog\/myarticles\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Marius Bancila&#039;s Blog | About code. Mostly on C++\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Works\" \/>\n\t\t<meta property=\"og:description\" content=\"A list of the articles, projects and other works of mine..\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/mariusbancila.ro\/blog\/myarticles\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2010-07-04T12:46:57+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-03-04T20:00:54+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Works\" \/>\n\t\t<meta name=\"twitter:description\" content=\"A list of the articles, projects and other works of mine..\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/myarticles\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/myarticles\\\/#listItem\",\"name\":\"Works\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/myarticles\\\/#listItem\",\"position\":2,\"name\":\"Works\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog#listItem\",\"name\":\"Home\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/#organization\",\"name\":\"Marius Bancila's Blog\",\"description\":\"About code. Mostly on C++\",\"url\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/myarticles\\\/#webpage\",\"url\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/myarticles\\\/\",\"name\":\"Works\",\"description\":\"A list of the articles, projects and other works of mine..\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/myarticles\\\/#breadcrumblist\"},\"datePublished\":\"2010-07-04T14:46:57+02:00\",\"dateModified\":\"2024-03-04T22:00:54+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/\",\"name\":\"Marius Bancila's Blog\",\"description\":\"About code. Mostly on C++\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Works","description":"A list of the articles, projects and other works of mine..","canonical_url":"https:\/\/mariusbancila.ro\/blog\/myarticles\/","robots":"max-image-preview:large","keywords":"articles,codeguru,codexpert,faq,projects,games,plugins","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/mariusbancila.ro\/blog\/myarticles\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog#listItem","position":1,"name":"Home","item":"https:\/\/mariusbancila.ro\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/myarticles\/#listItem","name":"Works"}},{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/myarticles\/#listItem","position":2,"name":"Works","previousItem":{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog#listItem","name":"Home"}}]},{"@type":"Organization","@id":"https:\/\/mariusbancila.ro\/blog\/#organization","name":"Marius Bancila's Blog","description":"About code. Mostly on C++","url":"https:\/\/mariusbancila.ro\/blog\/"},{"@type":"WebPage","@id":"https:\/\/mariusbancila.ro\/blog\/myarticles\/#webpage","url":"https:\/\/mariusbancila.ro\/blog\/myarticles\/","name":"Works","description":"A list of the articles, projects and other works of mine..","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/mariusbancila.ro\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/mariusbancila.ro\/blog\/myarticles\/#breadcrumblist"},"datePublished":"2010-07-04T14:46:57+02:00","dateModified":"2024-03-04T22:00:54+02:00"},{"@type":"WebSite","@id":"https:\/\/mariusbancila.ro\/blog\/#website","url":"https:\/\/mariusbancila.ro\/blog\/","name":"Marius Bancila's Blog","description":"About code. Mostly on C++","inLanguage":"en-US","publisher":{"@id":"https:\/\/mariusbancila.ro\/blog\/#organization"}}]},"og:locale":"en_US","og:site_name":"Marius Bancila's Blog | About code. Mostly on C++","og:type":"article","og:title":"Works","og:description":"A list of the articles, projects and other works of mine..","og:url":"https:\/\/mariusbancila.ro\/blog\/myarticles\/","article:published_time":"2010-07-04T12:46:57+00:00","article:modified_time":"2024-03-04T20:00:54+00:00","twitter:card":"summary","twitter:title":"Works","twitter:description":"A list of the articles, projects and other works of mine.."},"aioseo_meta_data":{"post_id":"616","title":"Works","description":"A list of the articles, projects and other works of mine..","keywords":[{"label":"articles","value":"articles"},{"label":"codeguru","value":"codeguru"},{"label":"codexpert","value":"codexpert"},{"label":"FAQ","value":"FAQ"},{"label":"projects","value":"projects"},{"label":"games","value":"games"},{"label":"plugins","value":"plugins"}],"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":[],"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2021-03-18 21:02:54","updated":"2025-12-12 07:05:07","seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"Marius Bancila","author_link":"https:\/\/mariusbancila.ro\/blog\/author\/admin\/"},"uagb_comment_info":0,"uagb_excerpt":"This page lists most of my works, including articles, projects, relevant sample codes, talks and others. Books Modern C++ Programming Cookbook Modern C++ Programming Cookbook, 2nd Edition Modern C++ Programming Cookbook, 3rd Edition Template Metaprogramming with C++ The Modern C++ Challenge Learn C# Programming Talks CppEurope 2020: C++ libraries for daily use ApexVox 2.0: Things&hellip;","coauthors":[],"author_meta":{"author_link":"https:\/\/mariusbancila.ro\/blog\/author\/admin\/","display_name":"Marius Bancila"},"relative_dates":{"created":"Posted 16 years ago","modified":"Updated 3 years ago"},"absolute_dates":{"created":"Posted on July 4, 2010","modified":"Updated on March 4, 2024"},"absolute_dates_time":{"created":"Posted on July 4, 2010 2:46 pm","modified":"Updated on March 4, 2024 10:00 pm"},"featured_img_caption":"","featured_img":false,"series_order":"","jetpack_shortlink":"https:\/\/wp.me\/PYNdv-9W","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/pages\/616","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/comments?post=616"}],"version-history":[{"count":39,"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/pages\/616\/revisions"}],"predecessor-version":[{"id":4705,"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/pages\/616\/revisions\/4705"}],"wp:attachment":[{"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/media?parent=616"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}