Debug Assertion Failed.

Just as my Visual C++ program begins to run, an error box appears with the title "Microsoft Visual C++ Debug Library". The box states "/Debug assertion failed.  Program: c:\mmha\mmha3.exe.  File: tooltip.cpp.  Line: 383.  For information on how your program can cause an assertion failure... (etc.) ...application."  I am stuck!
I should mention that the program was compiled for use with shared DLLs on my computer (and works fine on MY computer), but this problem occurs when I run the program on someone else's computer.  I previously had to copy several DLL files onto the other person's computer, but it is still not working of course!
Mark EbdenAsked:
Who is Participating?
 
dirtdartCommented:
There are several problems that could have happened here.   First and most simple, when you copied the dll's to your other machine, did you properly register them?  If they are all properly registered, then it is probably a problem with accessing memory.  Your program has accessed a section of memory that has been marked as not usable by the client machine.  Along with this, you don't have the correct debug symbols for the dll in which the  error is occuring.  This is where teh debug assertation is failing.  The C computer is trying to find debug information that does not exist.  Once you get the debug symbols installed, you should be able to at least find where the error is occuring.
0
 
alexxxCommented:
Do you have the source to look it up (line 383)?
0
 
Mark EbdenAuthor Commented:
Tooltip.cpp is not something I wrote.

0
 
y96andhaCommented:
If you are running VC 5.0, this is the source code in question. You can choose to install source code for MFC when installing, and then you'll get the file referred to. Line 383 is marked with a =>.

            // 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(TTM_GETTOOLINFO, 0, (LPARAM)&ti))
            {
                  ASSERT(ti.cbSize == sizeof(TOOLINFO));
                  ASSERT(ti.uFlags == TTF_IDISHWND);
                  ASSERT(ti.hwnd == m_hWnd);
                  ASSERT(ti.uId == (UINT)m_hWnd);
=> VERIFY(pToolTip->SendMessage(TTM_ADDTOOL, 0, (LPARAM)&ti));
            }

0
 
Mark EbdenAuthor Commented:
Thank you very much dirtdart!  I didn't register the DLLs.  But I don't have a clue how to register DLLs!  What should I do?

Thanks again.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.