Le Café Central de

                 ... Deva blogs!!

  • Le Café Central de DeVa

    C++/ATL Project throws error C2061: syntax error : identifier '_ATL_FUNC_INFO'


    One of my customer reported that they created a ATL Project/MFC CDHtmlDialog based C++ application and they notice the following errors in afxdhtml.h (they created it using VS 2003).

    afxdhtml.h(272) : error C2238: unexpected token(s) preceding ';'
    afxdhtml.h(289) : error C2061: syntax error : identifier '_ATL_FUNC_INFO'
    afxdhtml.h(290) : error C2061: syntax error : identifier '_ATL_FUNC_INFO'

    I tried the code piece at my end locally and tested with latest visual studio – I failed to see the issue and it just works for me. Later I done further research on this and found the following:

    The #include <afxdhtml.h> directive is placed in the stdafx.h pre-compiled header file before the "using namespace ATL;" directive, and the #define _ATL_NO_AUTOMATIC_NAMESPACE was given previously. Thus, the symbols in the header file which belong to the ATL namespace are not properly resolved. When adding a class from the MFC dialog class wizard, you are given the choice of several dialog base classes, most of which do not require the ATL namespace "using" directive. Thus, the wizard script in default.htm doesn’t make any attempt to ensure that the header file corresponding to the class name come after a using directive.

    In Visual Studio 2005 and later versions, the problem doesn’t occur because all references to CComPtr are now prefixed with ::ATL::, alleviating the need to either direct “using namespace ATL;” or to define the macro to eliminate the automatic use of the ATL namespace. So I recommended them to try one of the following to move ahead:

    • Remove the #define _ATL_NO_AUTOMATIC_NAMESPACE directive from the stdafx.h header, or
    • Move the using namespace ATL; directive before the #include <afxdhtml.h>
    • Upgrade to Visual Studio 2005 and above. Also make sure they're fully patched with latest service pack/fixes.

  • Le Café Central de DeVa

    Exchange Server 2013: How to write an Exchange 2013 transport agent?


    Here is a developer article published “how to build/write an Exchange Server 2013 based transport agent?” in a detailed fashion about a sample transport Agent to illustrate various Exchange 2013 transport agent functionality as well as stripping all the hyperlinks from the message body. The article also talks starting from what’s a transport agent, changes to Exchange Server 2013 environment – transport agent management, setting up the environment etc . They too published the code base here. You can try this out and make use of the same.


  • Le Café Central de DeVa

    Virtual Classroom : Building Web Apps with ASP.NET Jump Start


    Hi there,

    You can join this Jump Start session provided by Microsoft Virtual Academy – it’s tailored for experienced application developers interested in leveraging ASP.NET and Visual Studio 2012 to offer modern apps that target modern browsers. Two of Microsoft’s most seasoned ASP.NET speakers, Scott Hanselman and Jon Galloway, will provide an accelerated introduction to building modern web applications with ASP.NET 4.5 and ASP.NET MVC 4. In this course, they will target key scenarios like building mobile ready websites, social web applications as well as modern HTML5 browser features.

    Technologies Covered

         •  New and advanced features in ASP.NET Web Forms
          •  ASP.NET MVC 4 and ASP.NET Web API
          •  jQuery
          •  SignalR
          •  Entity Framework
          •  Visual Studio 2012
          •  Internet Explorer 10 and HTML5
          •  Building apps for Office with HTML5
          •  Windows Azure Web Sites for ASP.NET developers


    February 19, 2013
    8:00am-5:00pm PST

    Register: In order to participate you need to register first.
    Where : Live online
    What  : Engaging, demo virtual class
    Cost  : Free
    Target Audience: Intended for developers who have at least six months of professional experience.

    Hope this helps.

Page 1 of 1 (3 items)