|
I have already explained to you the difference between ASCII and the extended version in this post[^].
I have already explained that the these extended codes display different characters depending on the code page being utilized. The debugger is interpreting the code as UTF-8 so displays the character à on your computer. Which by the way... displays correctly on mine. Probably because the codepage I am using is Western European Windows-1252[^]
Best Wishes,
-David Delaune
|
|
|
|
|
Once again Thanks a lot.
Regards,
Mushq
|
|
|
|
|
I created a dialog-based program, inserted a new dialog, placed a CMonthCalendar Control on the new dialog. I used the varavle wizard and created a varable for the CMonthCalendar Control. EVERYTHING worked when I checked it in Debug.
I then inserted a CListCtrl listbox, created a varable for it. I then compiled without any errors. I again checked the CMonthCalendar Control and found that I had NO hwnd, ie hwnd=00000000. Naturally upon the GetCurSel(CTime ct) I received a "Access Violation" because the first thing done is check for IsWindow() in MFC and naturally it didn't have hwnd.
Has anyone else had this or a simular problem with VS2008 Professtional?
I had no problem with this in VS2008 Professional BETA 2.
Help!!!
A C++ programming language novice, but striving to learn
|
|
|
|
|
Did you call InitCommonControlsEx() to register that control's window class?
|
|
|
|
|
Here's the code from my "theApp" objerct:
INITCOMMONCONTROLSEX InitCtrls;
InitCtrls.dwSize = sizeof(InitCtrls);
// Set this to include all the common control classes you want to use
// in your application.
InitCtrls.dwICC = ICC_WIN95_CLASSES;
InitCommonControlsEx(&InitCtrls);
I don't know if this is right/wrong. It's what the wizzard put in the programs .cpp file
some more code:
CMonthCalCtrl m_cMonCtrl;
CListCtrl m_cLstCtrl;
DDX_Control(pDX, IDC_MONTHCAL, m_cMonCtrl);
DDX_Control(pDX, IDC_LOG_ENTRY_EDTLOG, m_cLstCtrl);
CTime ct;
/**************************************** ERROR *******************************/
m_cMonCtrl.GetCurSel(ct);// "Access Violation" error (no hwnd, ie hwnd=00000000)
A C++ programming language novice, but striving to learn
|
|
|
|
|
Larry Mills Sr wrote: InitCommonControlsEx(&InitCtrls);
DDX_Control(pDX, IDC_LOG_ENTRY_EDTLOG, m_cLstCtrl);
Just for grins, what happens if you comment out these two statements?
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Larry Mills Sr wrote: ...when I checked it in Debug.
Checked what?
Larry Mills Sr wrote: Naturally upon the GetCurSel(CTime ct)
Which is called from where?
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Here's the code:
CMonthCalCtrl m_cMonCtrl;
CListCtrl m_cLstCtrl;
DDX_Control(pDX, IDC_MONTHCAL, m_cMonCtrl);
DDX_Control(pDX, IDC_LOG_ENTRY_EDTLOG, m_cLstCtrl);
/**************************************** ERROR *******************************/
CTime ct;
m_cMonCtrl.GetCurSel(ct);// "Access Violation" error (no hwnd, ie hwnd=00000000)
A C++ programming language novice, but striving to learn
|
|
|
|
|
Larry Mills Sr wrote: m_cMonCtrl.GetCurSel(ct);// "Access Violation" error (no hwnd, ie hwnd=00000000)
Where is this called from?
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Here's the code again:
void CEditLog::OnMcnSelectMonthcal(NMHDR *pNMHDR, LRESULT *pResult)
{
/**************************************** ERROR *******************************/
//LPNMSELCHANGE pSelChange = reinterpret_cast<LPNMSELCHANGE>(pNMHDR);
// TODO: Add your control notification handler code here
//m_cMonCtrl
CString str;
CString csFileName;
CString csTmp;
int nMonth, nDay, nYear;
nMonth = nDay = nYear = 0;
CTime ct;
/**************************************** ERROR *******************************/
m_cMonCtrl.GetCurSel(ct);// "Access Violation" error (no hwnd, ie hwnd=00000000)
it's called when the user selects a date in the control.
A C++ programming language novice, but striving to learn
|
|
|
|
|
I just tried this (the only control on the dialog template was a Month Calendar) with VS6 and it worked fine. I suggest you do the same, and then start re-introducing your other code until the problem comes back.
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Yes, I've done this several times. Still the same result if I also include a ListCtrl on the same dialog. Try doling so yourself: ie, add a listctrl then try to add column headers (Report View). either the MonthCalendar will throw an Access vioalation or the ListCtrl will!
A C++ programming language novice, but striving to learn
|
|
|
|
|
Larry Mills Sr wrote: Try doling so yourself: ie, add a listctrl then try to add column headers (Report View). either the MonthCalendar will throw an Access vioalation or the ListCtrl will!
Did it. No errors.
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
It has to be myh bad install then. I created another dialog-based project, put a MonthCal control and ListControl on the same dialog and this time the listcontrol can up with hwnd=00000000. (It was called before the monthcal control.)
A C++ programming language novice, but striving to learn
|
|
|
|
|
Larry Mills Sr wrote: It has to be myh bad install then.
If you care to send me your e-mail address via private reply, I'll send you my VS project for you to compare.
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Okay: larryamillssr@hughes.net
By-the-way, I'd like to send you my complete project so you can check it out.(the project for checking for the error.) The original project compiled and worked correctly under VS2008 Pro BETA 2. This retail version has given me nothing but trouble from the start. And I can't get any help from microsoft. I think it didn't load something/or didn't merge something right. I've reinstalled it 4 times with the same results.
Like I said, the program was created under VS2008 APro BETA 2 and everything worked correctly until I installed the retail version.
A C++ programming language novice, but striving to learn
|
|
|
|
|
Larry Mills Sr wrote: Okay: larryamillssr@hughes.net
It's on its way.
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
David,
I'm having some trouble with sending you the project. Please be patient. I'll eventually fiquire out why my program (Outlook) is having trouble sending it to you.
A C++ programming language novice, but striving to learn
|
|
|
|
|
In the interim, what did you discover with the code that I sent you?
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Your ListControl and MonthCal control both had hwnd. However, I don't know if that proves anything or not. The program I am having this problem with Compiled and Ran as it was meant to do under VS2008 Pro BETA 2. It's this retail version that is having a problem with it. I was nearly finished with that program too!
That's why I asked if anyone else was having a problem with VS2008 Pro retail version.
A C++ programming language novice, but striving to learn
|
|
|
|
|
David,
I've tried everything to send you the project. Something is wrong and I can't send it. Maybe I could send a file at a time. I've reinstalled again and nothing has changed.
A C++ programming language novice, but striving to learn
|
|
|
|
|
Well, since I do not have VS2008, I'm not sure it would help. Is Outlook complaining about all attachments, or just .zip files?
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Outlook says file too large. It's only 15.3MB
If you used your program and create another dialog calling if "IDD_ERROR_DLG" with a class named "CErrorDlg.h/.cpp" You could use my header and .cpp file to see what happens. Want to try?
A C++ programming language novice, but striving to learn
|
|
|
|
|
Larry Mills Sr wrote: Outlook says file too large. It's only 15.3MB
Remove the unnecessary binary files (e.g., EXE, OBJ, PCH, OPT, NCB) from it.
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Thanks to David's knowledge I've discovered that my VS2008 is NOT broken. The problem occured because I forgot to include "CDialog::OnInitDialog();" in my OnInitDialog() function.
Thanks David.
A C++ programming language novice, but striving to learn
|
|
|
|