From: Chan, Michael T (Research) <chanm@re...> - 2002-12-20 21:34:30
I was able to reproduce the same problem.
I have VC6 with service pack 5.
Stepping through the debugger, I noticed that
the following method was called three times,
and failed during the third:
// From ..\MFC\SRC\APPCORE.CPP
if (lpszAppName != NULL)
m_pszAppName = _tcsdup(lpszAppName);
m_pszAppName = NULL;
// initialize CWinThread state
AFX_MODULE_STATE* pModuleState = _AFX_CMDTARGET_GETSTATE();
AFX_MODULE_THREAD_STATE* pThreadState = pModuleState->m_thread;
ASSERT(AfxGetThread() == NULL); // <- fail here
I would like to explore adding other GUI functionalities with VGUI
such as modeless dialogs and buttons in MFC, and they are apparently
not available in VGUI.
Any ideas will be appreciated.
Hi everybody, I successfully built mfc_example project at vgui/examples directory.
However, it cause a ASSERTION error at running time.
The error message is
File: appcore.cpp Line: 85
Anyone have idea what cause it?
On Fri 20 Dec 2002, Chan, Michael T (Research) wrote:
> I would like to explore adding other GUI functionalities with VGUI
> such as modeless dialogs and buttons in MFC, and they are apparently
> not available in VGUI.
I don't think this is a good idea. To me, the goal of vgui is to
provide a simple set of cross-platform interfaces that can be used to
build a quick and dirty visual interface to algorithms that I am
experimenting with. It is not intended to be a fully-fledged GUI in
which you can write a robust user interface for a "deliverable". In
that sense, it is not like the TargetJr Parmesan.
Exploring modeless dialogs and such is fine, provided the
implementation works for MFC, gtk and Qt. If it leaves any of these
out, you've lost the cross-platform advantage of vgui, and you may as
well write your dialogs in straight MFC. (BTW, there is example code
to interface vgui (and therefore vil) directly with MFC.)
The biggest advantage of vgui for me is the ability to quickly add
visualization to any stage of an algorithm. For this, the ability to
grab the event loop, etc, are crucial. The algorithm is in charge, not
the GUI. Contrast this with a proper GUI, where the algorithms are
generally launched according to GUI events.
I think the way forward to develop deliverable user interfaces is to
use an existing cross-platform GUI toolkit, such as wxWindows or Qt.
Just my simple thoughts.