Yes that is my mistake which I assumed was the case from the start. I was
calling to make the static control change before I have a window. Yes I
called SetWindowText() in the CAboutDlg::OnInitDialog().
is displayed.
"Joseph M. Newcomer" <newcomer@flounder.com> wrote in message
See below....
On Sat, 19 Jun 2010 00:32:06 -0500, "JCO" <someone@somewhere.com> wrote:
Error 1:
Debug Assertion Failed!
Program: ........ name of program
File: f:\dd\vcctools\vc7libs\ship\atlmfc\src\mfc\winocc.cpp
Line: 246
This is line 246:
ENSURE(::IsWindow(m_hWnd) || (m_pCtrlSite != NULL));
****
So what are the values of m_hWnd and m_pCtrlSite? This is in
SetWindowText, so you need
to show us where you are calling it, not just the line, but the context!
Are you calling SetWindowText of a dialog before the DoModal()? This
cannot POSSIBLY work
bcause until the DoModal is executed, there IS NO WINDOW to set the text
to.
For example
CWhatever dlg;
dlg.m_Name.SetWindowText(s);
dlg.DoModal();
cannot work. In fact, BEFORE the DoModal, there is no dialog (hence no
window) and AFTER
the DoModal there is no dialog (hence no window). The ONLY valid place
you can do this
SetWindowText is in, or after the execution of, OnInitDialog. Until
CWhatever::OnInitDialog is executed, there is no control (if you don't
have an
OnInitDialog, then CDialog::OnInitDialog is going to get called, and the
same applies)
joe
*****
"Joseph M. Newcomer" <newcomer@flounder.com> wrote in message
news:sibi16puh8g12a8scl9naspalcm7lpsfa7@4ax.com...
There is no such thing as "an" assertion error. Every assertion error
tells you precisely
which file it occurred in, and precisely what line of that file it
occurred on. Coupled
with the knowledge of which version of VS you are using, these three
pieces of information
tell us what went wrong. In the *absence* of these three pieces of
information, there is
no solution to the problem.
Did you enter the debugger? What did the ASSERT line say?
joe
On Wed, 16 Jun 2010 09:21:25 -0500, "JCO" <someone@somewhere.com> wrote:
Yes this is all working now except for the implementation in the actual
About Box. I'm getting the Assertion Error.
For the AboutBox implementation I have the following:
prototypes
void SetVersionString (LPTCSTR sVer);
LPTCSTR GetVersionString (void);
//m_CtrlStaticVer is the control variable for the CStatic that is to be
set
with the proper value in the dialog
BOOL CAboutDlg::OnInitDialog(void)
{
CString s;
s.Format( _T("AppVersionDynamic, Version %d.%d.%d.%d"), VERMAJ,
VERMIN, VERFIX,
BUILDNUMBER );
SetVersionString( s );
m_CtrlStaticVer.SetWindowText( GetVersionString() );
return TRUE;
}
I get 2 Assertion Errors. One deals with the control variable setting
the
value. If commented out, I get still get an assertion on the dialog
when
you close it out.
Thanks
"Joseph M. Newcomer" <newcomer@flounder.com> wrote in message
news:i7jg165ugb9uba3nei7p3tqleka51cvm7v@4ax.com...
If you add a VERSIONINFO to the RC2 file, you must DELETE the EXISTING
ONE
from the .rc
file! Otherwise, guess what, you have a duplicate resource of type
VERSION, whose name is
1, and whose language is 0x0409.
Error 1 leads directly to error 2.
joe
On Tue, 15 Jun 2010 12:24:05 -0500, "JCO" <someone@somewhere.com>
wrote:
When I add this information to the RC2 file, I get these two errors:
1 CVT1100: duplicate resource, Type:VERSION, name:1, language:0x0409
2 LNK1123: failure during conversion to COFF: file invalid or corrupt
"RB" <NoMail@NoSpam> wrote in message
news:umG$MhIDLHA.4400@TK2MSFTNGP05.phx.gbl...
Corrective update, although the paste I gave you does in fact work
in my App currently. You may want to reexamine my use of the
results of #define _STR(x) #x
#define STR(x) _STR(x)
since I am still learning this area, and some reading I did last
night
proves to me that I did not fully understand what this macro was
expanding to when I implemented some of the pasted code.
I really should not be replying to questions since I am not at that
level of competence yet. I only supplied it since I "appeared at the
time" to have a working example of what you asked for, which
the whole idea was given to me ( if you followed the thread )
by David Webber, but the implementation (and any foo bars )
are my doing, not Davids.
So use what you will but be aware.
RB
Joseph M. Newcomer [MVP]
email: newcomer@flounder.com
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
Joseph M. Newcomer [MVP]
email: newcomer@flounder.com
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
Joseph M. Newcomer [MVP]
email: newcomer@flounder.com
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm