jaustell
asked on
Toolbar Asset w/VC++ 5.0 in win95 but not winNT
After upgrading to VC++ 5.0, any app that has a toolbar gets a asset as soon as the mouse is moved over the toolbar. Note: this happens on some win95 machines but not on winNT.
The debug version of the app asserts in tooltip.cpp at line
383 when the mouse is over the toolbar.
from tooltips.cpp
void CWnd::FilterToolTipMessage (MSG* pMsg)
{
...snip...
// add a "dead-area" tool for areas between toolbar buttons
TOOLINFO ti; memset(&ti, 0, sizeof(TOOLINFO));
ti.cbSize = sizeof(TOOLINFO);
ti.uFlags = TTF_IDISHWND;
ti.hwnd = m_hWnd;
ti.uId = (UINT)m_hWnd;
if (!pToolTip->SendMessage(TT M_GETTOOLI NFO, 0, (LPARAM)&ti))
{
ASSERT(ti.cbSize == sizeof(TOOLINFO));
ASSERT(ti.uFlags == TTF_IDISHWND);
ASSERT(ti.hwnd == m_hWnd);
ASSERT(ti.uId == (UINT)m_hWnd);
line 383 ---> VERIFY(pToolTip->SendMessa ge(TTM_ADD TOOL, 0,
(LPARAM)&ti));
}
...snip...
}
The debug version of the app asserts in tooltip.cpp at line
383 when the mouse is over the toolbar.
from tooltips.cpp
void CWnd::FilterToolTipMessage
{
...snip...
// add a "dead-area" tool for areas between toolbar buttons
TOOLINFO ti; memset(&ti, 0, sizeof(TOOLINFO));
ti.cbSize = sizeof(TOOLINFO);
ti.uFlags = TTF_IDISHWND;
ti.hwnd = m_hWnd;
ti.uId = (UINT)m_hWnd;
if (!pToolTip->SendMessage(TT
{
ASSERT(ti.cbSize == sizeof(TOOLINFO));
ASSERT(ti.uFlags == TTF_IDISHWND);
ASSERT(ti.hwnd == m_hWnd);
ASSERT(ti.uId == (UINT)m_hWnd);
line 383 ---> VERIFY(pToolTip->SendMessa
(LPARAM)&ti));
}
...snip...
}
I have not yet been convinced by the features of VC++ 5.0. I have found similar kind of problems while porting my projects across from 4.2 to 5.0. If the project is mission critical. I won't take the risk for some goodies which do nothing.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.