locked
VS2010 WF designer issue. RRS feed

  • Question

  • Well, when a XAML file is loaded with all collapse items, the prompted tool-tip on the WF designer doesn't give a problem. Everything is working fine until the tool-tip prompted on top of the screen of an expanded processes activities (the deeper processes activities from the collapsed items). I have this issue every time when my mouse cursor accidentally runs over the title of the process activities (where the tool-tip is prompted). My Visual Studio will just hang there and I am forced to restart again.

    I am not sure what is the minimum requirement for a WF designer? However, this is quite ridiculous. Out 10 of the 10 times, I am forced to restart my VS2010 once the tool-tip is shown accidentally.

    Please help!



    • Edited by lannyboy Monday, November 14, 2011 8:21 AM
    Monday, November 14, 2011 8:19 AM

Answers

  • HOLY COW!

    FINALLY! SOLVED!

    Do you know why??? If you are using HP laptop/PC, please do not install the HP ProtectTools Security Manager Suite!

    This is my 3rd format with Windows 7 SP1 Enterprise x64 with default drivers installation.
    The next thing I did is just installing VS2010 SP1 Ultimate x86 first.
    Amazingly, XAML doesn't crash anymore!
    So, I installed the driver from one to one and tested out with the VS2010 SP1.

    AND FOUND THE CULPRIT!!! HP ProtectTools Security Manager Suite!

    This issue has been bugging me 1 week time =.=' I never do my work whole week just to debug this issue!

    It has nothing to do with Microsoft. But with VS2010SP1, it crashes with HP ProtectTools Security Manager Suite! I cannot use finger sign-in anymore :/ Sigh!

    • Marked as answer by LeoTang Thursday, November 24, 2011 9:52 AM
    Wednesday, November 23, 2011 7:16 AM

All replies

  • Hi,

    Could you please provider the code of the xmal file for us to reproduce this issue?

    Thanks.


    Leo Tang [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Tuesday, November 15, 2011 9:36 AM
  • I don't think the issue comes from XAML. I just tried out the same thing on Windows Server 2003 SP2 (x86 Enterprise Version) with lower computer spec, it didn't give me any issue at all. While my laptop is using Windows 7 SP1 (x64 Enterprise Version) which always produce me this issue. Both environment are running with latest VS2010 SP1 (and all the available patches) as well as the OS latest patches.

    I am wondering if this x64 machine could be one of the possible reason to cause me the problem?

    Tuesday, November 15, 2011 12:24 PM
  • Unflagged    >    5972    0    Main Thread    Main Thread    625578c3    Normal
                                  clr.dll!625578c3()      
                                  [Frames below may be incorrect and/or missing, no symbols loaded for clr.dll]     
                                  PresentationCore.ni.dll!5ed3e402()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e40f()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5ed3e429()      
                                  PresentationCore.ni.dll!5f05e824()      
                                  PresentationCore.ni.dll!5e8d055e()      
                                  PresentationFramework.ni.dll!5d457721()      
                                  PresentationFramework.ni.dll!5d45762d()      
                                  PresentationFramework.ni.dll!5d45b979()      
                                  WindowsBase.ni.dll!5f2d85ec()      
                                  PresentationFramework.ni.dll!5cbe3cc0()      
                                  WindowsBase.ni.dll!5f2d83bc()      
                                  WindowsBase.ni.dll!5f2d676b()      
                                  WindowsBase.ni.dll!5f2d58fb()      
                                  PresentationFramework.ni.dll!5cc22088()      
                                  PresentationFramework.ni.dll!5d456d27()      
                                  PresentationFramework.ni.dll!5d478dbd()      
                                  PresentationFramework.ni.dll!5d479735()      
                                  WindowsBase.ni.dll!5f2d85ec()      
                                  PresentationFramework.ni.dll!5cbe3cc0()      
                                  clr.dll!6253fa89()      
                                  clr.dll!6253f697()      
                                  0d371584()     
                                  e045c7c6()     

    Tuesday, November 15, 2011 5:15 PM
  • This is what I debugged from the hang VS2010 to a XAML template, it keeps looping the _onexit((void)*) function:

    006CA0E8  mov         esi,dword ptr fs:[0EA8h]
    006CA0EF  mov         dword ptr [edi-4],8AD0F9C6h
    006CA0F6  mov         dword ptr [edi],62195D60h
    006CA0FC  mov         eax,dword ptr [esi+0Ch]
    006CA0FF  mov         dword ptr [edi+4],eax
    006CA102  mov         dword ptr [edi+20h],ebp
    006CA105  mov         dword ptr [edi+0Ch],0
    006CA10C  mov         dword ptr [esi+0Ch],edi
    006CA10F  ret
    6A559059  mov         dword ptr [ebp-10h],ecx
    6A55905C  mov         eax,dword ptr [ebp-14h]
    6A55905F  mov         eax,dword ptr [eax+14h]
    6A559062  mov         eax,dword ptr [eax]
    6A559064  push        ecx
    6A559065  mov         dword ptr [ebp-34h],4
    6A55906C  mov         dword ptr [ebp-2Ch],6A55907Ch
    6A559073  mov         dword ptr [ebp-30h],esp
    6A559076  mov         byte ptr [esi+8],0
    6A55907A  call        eax
    75757809  mov         edi,edi
    7575780B  push        ebp
    7575780C  mov         ebp,esp
    7575780E  push        esi
    7575780F  mov         esi,dword ptr [ebp+8]
    75757812  mov         eax,0E5h
    75757817  cmp         word ptr [esi+8],ax
    7575781B  je          7578F5FE
    75757821  push        0
    75757823  push        esi
    75757824  call        75757839
    75757839  mov         edi,edi
    7575783B  push        ebp
    7575783C  mov         ebp,esp
    7575783E  mov         ecx,dword ptr [ebp+8]
    75757841  mov         eax,dword ptr [ecx+4]
    75757844  cmp         eax,100h
    75757849  jb          75757865
    75757865  test        eax,0FFFE0000h
    7575786A  jne         7578F5F2
    75757870  xor         eax,eax
    75757872  pop         ebp
    75757873  ret         8
    75757829  pop         esi
    7575782A  pop         ebp
    7575782B  ret         4
    6A55907C  mov         byte ptr [esi+8],1
    6A559080  mov         edx,dword ptr ds:[6A491464h]
    6A559086  cmp         dword ptr [edx],0
    6A559089  je          6A559092
    6A559092  mov         dword ptr [ebp-30h],0
    6A559099  test        eax,eax
    6A55909B  setne       al
    6A55909E  movzx       eax,al
    6A5590A1  mov         edi,dword ptr [ebp-38h]
    6A5590A4  mov         dword ptr [esi+0Ch],edi
    6A5590A7  and         eax,0FFh
    6A5590AC  lea         esp,[ebp-0Ch]
    6A5590AF  pop         ebx
    6A5590B0  pop         esi
    6A5590B1  pop         edi
    6A5590B2  pop         ebp
    6A5590B3  ret
    6A53D825  lea         ecx,[ebp-40h]
    6A53D828  call        6A51A0F0
    6A51A0F0  mov         eax,6A4A5358h
    6A51A0F5  mov         ebp,ebp
    6A51A0F7  jmp         6A5590C0
    6A5590C0  push        ebp
    6A5590C1  mov         ebp,esp
    6A5590C3  push        edi
    6A5590C4  push        esi
    6A5590C5  push        ebx
    6A5590C6  sub         esp,34h
    6A5590C9  mov         dword ptr [ebp-14h],eax
    6A5590CC  xor         eax,eax
    6A5590CE  mov         dword ptr [ebp-10h],eax
    6A5590D1  lea         edi,[ebp-3Ch]
    6A5590D4  call        6A518CE8
    6A518CE8  jmp         006CA0E8                  (** Back to the top one, infinite loop **)

    I tried to understand the assembly, but I have limit knowledge to it. Correct me if I am wrong, it keeps looping the try-catch-throw. When error it will go to onexit function, but then it is thrown into exception. Within the exception, it has error again and keeps infinite to throw...

    And this is the onexitc.c I tried to tap from:

    /***
    *onexit.c - save function for execution on exit
    *
    *       Copyright (c) Microsoft Corporation. All rights reserved.
    *
    *Purpose:
    *       defines _onexit(), atexit() - save function for execution at exit
    *
    *       In order to save space, the table is allocated via malloc/realloc,
    *       and only consumes as much space as needed.  __onexittable is
    *       set to point to the table if onexit() is ever called.
    *
    *******************************************************************************/

    #include <sect_attribs.h>
    #include <cruntime.h>
    #include <mtdll.h>
    #include <stdlib.h>
    #include <internal.h>
    #include <malloc.h>
    #include <rterr.h>
    #include <windows.h>
    #include <dbgint.h>


    int __cdecl __onexitinit(void);

    _CRTALLOC(".CRT$XIC") static _PIFV pinit = __onexitinit;

    /*
     * Define pointers to beginning and end of the table of function pointers
     * manipulated by _onexit()/atexit().
     * NOTE - the pointers are stored encoded.
     */
    extern _PVFV *__onexitbegin;
    extern _PVFV *__onexitend;

    /*
     * Define increments (in entries) for growing the _onexit/atexit table
     */
    #define MININCR     4
    #define MAXINCR     512

    static _onexit_t __cdecl _onexit_nolock(_onexit_t);
    static _onexit_t __cdecl _dllonexit_nolock(_onexit_t, _PVFV **, _PVFV **);

    /***
    *_onexit(func), atexit(func) - add function to be executed upon exit
    *
    *Purpose:
    *       The _onexit/atexit functions are passed a pointer to a function
    *       to be called when the program terminate normally.  Successive
    *       calls create a register of functions that are executed last in,
    *       first out.
    *
    *Entry:
    *       void (*func)() - pointer to function to be executed upon exit
    *
    *Exit:
    *       onexit:
    *           Success - return pointer to user's function.
    *           Error - return NULL pointer.
    *       atexit:
    *           Success - return 0.
    *           Error - return non-zero value.
    *
    *Notes:
    *       This routine depends on the behavior of _initterm() in CRT0DAT.C.
    *       Specifically, _initterm() must not skip the address pointed to by
    *       its first parameter, and must also stop before the address pointed
    *       to by its second parameter.  This is because _onexitbegin will point
    *       to a valid address, and _onexitend will point at an invalid address.
    *
    *Exceptions:
    *
    *******************************************************************************/

    _onexit_t __cdecl _onexit (
            _onexit_t func
            )
    {
            _onexit_t retval;

            _lockexit();

            __try {
                retval = _onexit_nolock(func);
            }
            __finally {
                _unlockexit();
            }

            return retval;
    }


    static _onexit_t __cdecl _onexit_nolock (
            _onexit_t func
            )
    {
            _PVFV * p;
            size_t  oldsize;
            _PVFV * onexitbegin = (_PVFV *) DecodePointer(__onexitbegin);
            _PVFV * onexitend = (_PVFV *) DecodePointer(__onexitend);

            /* overflow check */
            if (onexitend < onexitbegin ||
                ((char *)onexitend - (char *)onexitbegin) + sizeof(_PVFV) < sizeof(_PVFV))
            {
                return NULL;
            }

            /*
             * First, make sure the table has room for a new entry
             */
            if ( (oldsize = _msize_crt(onexitbegin))
                    < ((size_t)((char *)onexitend -
                (char *)onexitbegin) + sizeof(_PVFV)) )
            {
                /*
                 * not enough room, try to grow the table. first, try to double it.
                 */
                size_t newsize = oldsize + __min(oldsize, (MAXINCR * sizeof(_PVFV)));
                if ( newsize < oldsize ||
                     (p = (_PVFV *)_realloc_crt(onexitbegin, newsize)) == NULL )
                {
                    /*
                     * failed, try to grow by MININCR
                     */
                    newsize = oldsize + MININCR * sizeof(_PVFV);
                    if ( newsize < oldsize ||
                         (p = (_PVFV *)_realloc_crt(onexitbegin, newsize)) == NULL )
                        /*
                         * failed again. don't do anything rash, just fail
                         */
                        return NULL;
                }

                /*
                 * update __onexitend and __onexitbegin
                 */
    #pragma warning(suppress: 22008) /* prefast is confused */
                onexitend = p + (onexitend - onexitbegin);
                onexitbegin = p;
                __onexitbegin = (_PVFV *) EncodePointer(onexitbegin);
            }

            /*
             * Put the new entry into the table and update the end-of-table
             * pointer.
             */
             *(onexitend++) = (_PVFV) EncodePointer(func);
            __onexitend = (_PVFV *) EncodePointer(onexitend);

            return func;
    }

    int __cdecl atexit (
            _PVFV func
            )
    {
            return (_onexit((_onexit_t)func) == NULL) ? -1 : 0;
    }


    /***
    * void __onexitinit(void) - initialization routine for the function table
    *       used by _onexit() and atexit().
    *
    *Purpose:
    *       Allocate the table with room for 32 entries (minimum required by
    *       ANSI). Also, initialize the pointers to the beginning and end of
    *       the table.
    *
    *Entry:
    *       None.
    *
    *Exit:
    *       Returns _RT_ONEXIT if the table cannot be allocated.
    *
    *Notes:
    *       This routine depends on the behavior of doexit() in CRT0DAT.C.
    *       Specifically, doexit() must not skip the address pointed to by
    *       __onexitbegin, and it must also stop before the address pointed
    *       to by __onexitend.  This is because _onexitbegin will point
    *       to a valid address, and _onexitend will point at an invalid address.
    *
    *       Since the table of onexit routines is built in forward order, it
    *       must be traversed by doexit() in CRT0DAT.C in reverse order.  This
    *       is because these routines must be called in last-in, first-out order.
    *
    *       If __onexitbegin == __onexitend, then the onexit table is empty!
    *
    *Exceptions:
    *
    *******************************************************************************/

    int __cdecl __onexitinit (
            void
            )
    {
            _PVFV * onexitbegin;

            onexitbegin = (_PVFV *)_calloc_crt(32, sizeof(_PVFV));
            __onexitend = __onexitbegin = (_PVFV *) EncodePointer(onexitbegin);

            if ( onexitbegin == NULL )
                /*
                 * cannot allocate minimal required size. return
                 * fatal runtime error.
                 */
                return _RT_ONEXIT;

            *onexitbegin = (_PVFV) NULL;

            return 0;
    }


    #ifdef CRTDLL

    /***
    *__dllonexit(func, pbegin, pend) - add function to be executed upon DLL detach
    *
    *Purpose:
    *       The _onexit/atexit functions in a DLL linked with MSVCRT.LIB
    *       must maintain their own atexit/_onexit list.  This routine is
    *       the worker that gets called by such DLLs.  It is analogous to
    *       the regular _onexit above except that the __onexitbegin and
    *       __onexitend variables are not global variables visible to this
    *       routine but rather must be passed as parameters.
    *
    *Entry:
    *       void (*func)() - pointer to function to be executed upon exit
    *       void (***pbegin)() - pointer to variable pointing to the beginning
    *                   of list of functions to execute on detach
    *       void (***pend)() - pointer to variable pointing to the end of list
    *                   of functions to execute on detach
    *
    *Exit:
    *       Success - return pointer to user's function.
    *       Error - return NULL pointer.
    *
    *Notes:
    *       This routine depends on the behavior of _initterm() in CRT0DAT.C.
    *       Specifically, _initterm() must not skip the address pointed to by
    *       its first parameter, and must also stop before the address pointed
    *       to by its second parameter.  This is because *pbegin will point
    *       to a valid address, and *pend will point at an invalid address.
    *
    *       Note also that we do not decode/encode *pbegin/*pend.  That should
    *       be done in the caller, which will be the onexit in atexit.c.
    *
    *Exceptions:
    *
    *******************************************************************************/

    _onexit_t __cdecl __dllonexit (
            _onexit_t func,
            _PVFV ** pbegin,
            _PVFV ** pend
            )
    {
            _onexit_t retval;

            _lockexit();

            __try {
                retval = _dllonexit_nolock(func, pbegin, pend);
            }
            __finally {
                _unlockexit();
            }

            return retval;
    }

    static _onexit_t __cdecl _dllonexit_nolock (
            _onexit_t func,
            _PVFV ** pbegin,
            _PVFV ** pend
            )
    {
            _PVFV   *p=NULL;
            size_t oldsize;

            /*
             * First, make sure the table has room for a new entry
             */
            if ( (oldsize = _msize_crt(*pbegin)) <= (size_t)((char *)(*pend) -
                (char *)(*pbegin)) )
            {
                /*
                 * not enough room, try to grow the table
                 */
                size_t grow=__min(oldsize, MAXINCR * sizeof(_PVFV));
                if((_HEAP_MAXREQ-grow<oldsize) ||
                    ((p = (_PVFV *)_realloc_crt((*pbegin), oldsize + grow)) == NULL))
                {
                    /*
                     * failed, try to grow by ONEXITTBLINCR
                     */
                    grow=MININCR * sizeof(_PVFV);
                    if ( (_HEAP_MAXREQ-grow<oldsize) ||
                        ((p = (_PVFV *)_realloc_crt((*pbegin), oldsize + grow)) == NULL ))
                    {
                        /*
                         * failed again. don't do anything rash, just fail
                         */
                        return NULL;
                    }
                }

                /*
                 * update (*pend) and (*pbegin)
                 */
                (*pend) = p + ((*pend) - (*pbegin));
                (*pbegin) = p;
            }

            /*
             * Put the new entry into the table and update the end-of-table
             * pointer.
             */
             *((*pend)++) = (_PVFV)func;

            return func;

    }

    #endif  /* CRTDLL */
    • Edited by lannyboy Tuesday, November 15, 2011 5:24 PM
    Tuesday, November 15, 2011 5:23 PM
  • Hi,

    Thanks for posting. As this issue caused Visual Studio hang, you can submit this issue at Connect site.

    http://connect.microsoft.com/VisualStudio

    The engineers there will help you collect dump and necessary files, and product team will be able to investigate this issue.


    Leo Tang [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Wednesday, November 16, 2011 9:37 AM
  • After I have been giving to few machine tests:

    Windows XP SP3 x86 = works perfect
    Windows Server 2003 R2 SP2 x86 = works perfect
    Windows Server 2008 R2 SP1 x86 = works perfect
    Windows 7 SP1 x86 = works perfect
    Windows 7 SP1 x64 = hang

    I am going to give Windows Server 2003 R2 SP2 x64 and Windows Server 2008 SP1 x64 a try... Because I don't really have any x64 server machine at here...

    I also found out one issue... At my Windows 7 SP1 x64 machine, I tried to uninstall the update KB2468871 and reinstalled the one from http://www.microsoft.com/download/en/details.aspx?id=3556. KB2468871v2-x64 worked just fine but not KB246887v2-x86 (it didn't allow me to install even the patch is not applied). So, I went to check to the Windows Updates. This is what I found:

    Update for Microsoft.NET Framework 4 on Windows XP, Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008, Windows Server 2008 R2 for x64-based Systems (KB2468871)

    This above update is not the KB2468871v2-x86 update. I suspect this patch has caused almost x64 based system the same issue that I faced...

     

     

    Thursday, November 17, 2011 3:12 AM
  • Ok I traced deeper into the devenv.exe

    This is what I get:

     

    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434F4E: 0xe0434f4e.
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434F4E: 0xe0434f4e.
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434F4E: 0xe0434f4e.
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434F4E: 0xe0434f4e.
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434F4E: 0xe0434f4e.
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434F4E: 0xe0434f4e.
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434F4E: 0xe0434f4e.
    First-chance exception at 0x76c4b9bc in devenv.exe: Microsoft C++ exception: EEMessageException at memory location 0x003ddea0..
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434352: 0xe0434352.
    First-chance exception at 0x76c4b9bc in devenv.exe: Microsoft C++ exception: EEMessageException at memory location 0x003ae4b0..
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434352: 0xe0434352.
    First-chance exception at 0x76c4b9bc in devenv.exe: Microsoft C++ exception: EEMessageException at memory location 0x003ae4b0..
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434352: 0xe0434352.
    First-chance exception at 0x76c4b9bc in devenv.exe: Microsoft C++ exception: EEMessageException at memory location 0x003ae4b0..
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434352: 0xe0434352.
    First-chance exception at 0x76c4b9bc in devenv.exe: Microsoft C++ exception: EEMessageException at memory location 0x003ad054..
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434352: 0xe0434352.
    First-chance exception at 0x76c4b9bc in devenv.exe: Microsoft C++ exception: EEMessageException at memory location 0x003ad054..
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434352: 0xe0434352.
    First-chance exception at 0x76c4b9bc in devenv.exe: Microsoft C++ exception: EEMessageException at memory location 0x003ad054..
    First-chance exception at 0x76c4b9bc in devenv.exe: 0xE0434352: 0xe0434352.

    It seems there are memory error during scrolling down the XAML file.

    After researching the msdn, this is what I get from: http://msdn.microsoft.com/en-us/library/system.stackoverflowexception%28VS.90%29.aspx

    The exception that is thrown when the execution stack overflows because it contains too many nested method calls. This class cannot be inherited.

    WTF? a lower x86 machine can runs without problem while this Windows 7 X64 caused this issue?

    • Edited by lannyboy Thursday, November 17, 2011 8:28 AM
    Thursday, November 17, 2011 6:23 AM
  • I found another error messages:

    System.Windows.Data Error: 1 : Cannot create default converter to perform 'one-way' conversions between types 'System.Collections.ObjectModel.Collection`1[System.Activities.Activity]' and 'System.Activities.Presentation.Model.ModelItemCollection'. Consider using Converter property of Binding. BindingExpression:Path=ModelItem.Activities; DataItem='InvokeForReasonDesigner' (Name=''); target element is 'WorkflowItemsPresenter' (Name=''); target property is 'Items' (type 'ModelItemCollection')

    System.Windows.Data Error: 1 : Cannot create default converter to perform 'two-way' conversions between types 'System.Activities.Activity' and 'System.Activities.Presentation.Model.ModelItem'. Consider using Converter property of Binding. BindingExpression:Path=ModelItem.Then; DataItem='IfElseDesigner' (Name=''); target element is 'WorkflowItemPresenter' (Name=''); target property is 'Item' (type 'ModelItem')
    System.Windows.Data Error: 1 : Cannot create default converter to perform 'two-way' conversions between types 'System.Activities.Activity' and 'System.Activities.Presentation.Model.ModelItem'. Consider using Converter property of Binding. BindingExpression:Path=ModelItem.Else; DataItem='IfElseDesigner' (Name=''); target element is 'WorkflowItemPresenter' (Name=''); target property is 'Item' (type 'ModelItem')
    System.Windows.Data Error: 1 : Cannot create default converter to perform 'one-way' conversions between types 'System.Collections.ObjectModel.Collection`1[System.Activities.Activity]' and 'System.Activities.Presentation.Model.ModelItemCollection'. Consider using Converter property of Binding. BindingExpression:Path=ModelItem.Activities; DataItem='SequenceDesigner' (Name=''); target element is 'WorkflowItemsPresenter' (Name=''); target property is 'Items' (type 'ModelItemCollection')
    System.Windows.Data Error: 1 : Cannot create default converter to perform 'two-way' conversions between types 'System.Activities.Activity' and 'System.Activities.Presentation.Model.ModelItem'. Consider using Converter property of Binding. BindingExpression:Path=ModelItem.Then; DataItem='IfElseDesigner' (Name=''); target element is 'WorkflowItemPresenter' (Name=''); target property is 'Item' (type 'ModelItem')
    System.Windows.Data Error: 1 : Cannot create default converter to perform 'two-way' conversions between types 'System.Activities.Activity' and 'System.Activities.Presentation.Model.ModelItem'. Consider using Converter property of Binding. BindingExpression:Path=ModelItem.Else; DataItem='IfElseDesigner' (Name=''); target element is 'WorkflowItemPresenter' (Name=''); target property is 'Item' (type 'ModelItem')

    System.ComponentModel.Composition Warning: 1 : The ComposablePartDefinition 'Microsoft.VisualStudio.Editor.Implementation.LegacyContentTypeSource' has been rejected. The composition remains unchanged. The changes were rejected because of the following error(s): The composition produced a single composition error. The root cause is provided below. Review the CompositionException.Errors property for more detailed information.

    1) No valid exports were found that match the constraint '((exportDefinition.ContractName == "Microsoft.VisualStudio.Shell.SVsServiceProvider") AndAlso (exportDefinition.Metadata.ContainsKey("ExportTypeIdentity") AndAlso "Microsoft.VisualStudio.Shell.SVsServiceProvider".Equals(exportDefinition.Metadata.get_Item("ExportTypeIdentity"))))', invalid exports may have been rejected.

    Resulting in: Cannot set import 'Microsoft.VisualStudio.Editor.Implementation.LegacyContentTypeSource.GlobalServiceProvider (ContractName="Microsoft.VisualStudio.Shell.SVsServiceProvider")' on part 'Microsoft.VisualStudio.Editor.Implementation.LegacyContentTypeSource'.
    Element: Microsoft.VisualStudio.Editor.Implementation.LegacyContentTypeSource.GlobalServiceProvider (ContractName="Microsoft.VisualStudio.Shell.SVsServiceProvider") -->  Microsoft.VisualStudio.Editor.Implementation.LegacyContentTypeSource -->  AssemblyCatalog (Assembly="Microsoft.VisualStudio.Editor.Implementation, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")


    Friday, November 18, 2011 12:43 AM
  • formatted my laptop and reinstalled again with windows 7 sp1 and this time is with only visual studio 2010 ultimate sp1. nothing else. still produce me the same issue... i believe this hp 6930p drivers or the the hardware caused me issue...
    • Edited by lannyboy Saturday, November 19, 2011 7:01 AM
    Saturday, November 19, 2011 6:59 AM
  • HOLY COW!

    FINALLY! SOLVED!

    Do you know why??? If you are using HP laptop/PC, please do not install the HP ProtectTools Security Manager Suite!

    This is my 3rd format with Windows 7 SP1 Enterprise x64 with default drivers installation.
    The next thing I did is just installing VS2010 SP1 Ultimate x86 first.
    Amazingly, XAML doesn't crash anymore!
    So, I installed the driver from one to one and tested out with the VS2010 SP1.

    AND FOUND THE CULPRIT!!! HP ProtectTools Security Manager Suite!

    This issue has been bugging me 1 week time =.=' I never do my work whole week just to debug this issue!

    It has nothing to do with Microsoft. But with VS2010SP1, it crashes with HP ProtectTools Security Manager Suite! I cannot use finger sign-in anymore :/ Sigh!

    • Marked as answer by LeoTang Thursday, November 24, 2011 9:52 AM
    Wednesday, November 23, 2011 7:16 AM