From: Neel on
Hi Tom thanking you for post...


here is my dialog code..

/////////////////////////////////////////////////////////////////////////////
// CDeleteJed dialog


CDeleteJed::CDeleteJed(CWnd* pParent /*=NULL*/)
: CDialog(CDeleteJed::IDD, pParent)
{
//{{AFX_DATA_INIT(CDeleteJed)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT

m_bDelete = 0;
}


void CDeleteJed::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDeleteJed)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDeleteJed, CDialog)
//{{AFX_MSG_MAP(CDeleteJed)
ON_WM_WINDOWPOSCHANGED()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDeleteJed message handlers

BOOL CDeleteJed::OnInitDialog()
{
CDialog::OnInitDialog();

CListCtrl *pList=(CListCtrl *)GetDlgItem(IDC_JED_LIST);
pList->SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES );

DrawCol();

AddJedList();

return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}

CDeleteJed d(this); goes into constructor and also oninit inturn
DrawCol(); AddJedList(); successfully
while d.DoModal(); it goes into windows core files and
crashes as u know.

FYI IDD code is correct from resource.h .....


any comments


Regds
Neel






On Jan 23, 7:24 pm, "Tom Serface" <tom.nos...(a)camaswood.com> wrote:
> Hi Neel,
>
> Could be something wrong in your dialog code.  Could you post the start up
> code for CDeleteJed?  Is it just a small dialog.
>
> Also, check to make sure you didn't load a different set of resources from a
> resource DLL that perhaps has a different ID number of dialog in the same
> place as this one in your original code.
>
> One more thought, and it's just a guess, but are you trying to close the
> dialog automatically by pumping a message to it.  Maybe the message is
> getting processed before the dialog is done opening.  That's not likely the
> case, but ...
>
> Tom
>
> "Neel" <urn...(a)gmail.com> wrote in message
>
> news:3a6924b6-7ade-42ec-9019-12bc5e3a11f6(a)1g2000hsl.googlegroups.com...
>
>
>
> > Hi freinds,
>
> > please help on debug assert error while using domodal().
>
> > CDeleteJed d(this);
> >     d.DoModal();
>
> > when i debug i found assert as followed
>
> > =>
>
> > VERIFY(RunModalLoop(dwFlags) == m_nModalResult);
>
> > =>
>
> > ASSERT(ContinueModal());
> > // pump message, but quit on WM_QUIT
> > if (!AfxPumpMessage()) {
> >     AfxPostQuitMessage(0);
> >      return -1;
>
> > }
>
> > =>
>
> > BOOL AFXAPI AfxPumpMessage()
> > {
> >  CWinThread *pThread = AfxGetThread();
> >  if( pThread )
> >        return pThread->PumpMessage();
> >  else
> >        return AfxInternalPumpMessage();
>
> > }
>
> > =>
> > debug assertion failed . please help
>
> > Thanks in adv.
> > Neel- Hide quoted text -
>
> - Show quoted text -

From: Tom Serface on
In addition to what AJay wrote could you be loading any DLLs that snag the
resources by calling AfxSetResourceHandle or by not using AFX_MANAGE_STATE?

Also, if your dialog code is being called from another thread (like another
thread is calling back into the GUI thread code) that could be the problem
(similar to what Ajay is suggesting).

Tom

"Neel" <urneel(a)gmail.com> wrote in message
news:3eacb113-901a-4c28-8c56-c35c0b933720(a)e25g2000prg.googlegroups.com...
Hi Tom thanking you for post...


here is my dialog code..

/////////////////////////////////////////////////////////////////////////////
// CDeleteJed dialog


CDeleteJed::CDeleteJed(CWnd* pParent /*=NULL*/)
: CDialog(CDeleteJed::IDD, pParent)
{
//{{AFX_DATA_INIT(CDeleteJed)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT

m_bDelete = 0;
}


void CDeleteJed::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDeleteJed)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDeleteJed, CDialog)
//{{AFX_MSG_MAP(CDeleteJed)
ON_WM_WINDOWPOSCHANGED()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDeleteJed message handlers

BOOL CDeleteJed::OnInitDialog()
{
CDialog::OnInitDialog();

CListCtrl *pList=(CListCtrl *)GetDlgItem(IDC_JED_LIST);
pList->SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES );

DrawCol();

AddJedList();

return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}

CDeleteJed d(this); goes into constructor and also oninit inturn
DrawCol(); AddJedList(); successfully
while d.DoModal(); it goes into windows core files and
crashes as u know.

FYI IDD code is correct from resource.h .....


any comments


Regds
Neel






On Jan 23, 7:24 pm, "Tom Serface" <tom.nos...(a)camaswood.com> wrote:
> Hi Neel,
>
> Could be something wrong in your dialog code. Could you post the start up
> code for CDeleteJed? Is it just a small dialog.
>
> Also, check to make sure you didn't load a different set of resources from
> a
> resource DLL that perhaps has a different ID number of dialog in the same
> place as this one in your original code.
>
> One more thought, and it's just a guess, but are you trying to close the
> dialog automatically by pumping a message to it. Maybe the message is
> getting processed before the dialog is done opening. That's not likely the
> case, but ...
>
> Tom
>
> "Neel" <urn...(a)gmail.com> wrote in message
>
> news:3a6924b6-7ade-42ec-9019-12bc5e3a11f6(a)1g2000hsl.googlegroups.com...
>
>
>
> > Hi freinds,
>
> > please help on debug assert error while using domodal().
>
> > CDeleteJed d(this);
> > d.DoModal();
>
> > when i debug i found assert as followed
>
> > =>
>
> > VERIFY(RunModalLoop(dwFlags) == m_nModalResult);
>
> > =>
>
> > ASSERT(ContinueModal());
> > // pump message, but quit on WM_QUIT
> > if (!AfxPumpMessage()) {
> > AfxPostQuitMessage(0);
> > return -1;
>
> > }
>
> > =>
>
> > BOOL AFXAPI AfxPumpMessage()
> > {
> > CWinThread *pThread = AfxGetThread();
> > if( pThread )
> > return pThread->PumpMessage();
> > else
> > return AfxInternalPumpMessage();
>
> > }
>
> > =>
> > debug assertion failed . please help
>
> > Thanks in adv.
> > Neel- Hide quoted text -
>
> - Show quoted text -

From: Neel on
Yes Dialog is been created in other thread and i am trying to load
same dialog in dll code.

thanks
Neel

On Jan 26, 4:42 am, "Tom Serface" <tom.nos...(a)camaswood.com> wrote:
> In addition to what AJay wrote could you be loading any DLLs that snag the
> resources by calling AfxSetResourceHandle or by not using AFX_MANAGE_STATE?
>
> Also, if your dialog code is being called from another thread (like another
> thread is calling back into the GUI thread code) that could be the problem
> (similar to what Ajay is suggesting).
>
> Tom
>
> "Neel" <urn...(a)gmail.com> wrote in message
>
> news:3eacb113-901a-4c28-8c56-c35c0b933720(a)e25g2000prg.googlegroups.com...
> Hi Tom thanking  you for post...
>
> here is my dialog code..
>
> ///////////////////////////////////////////////////////////////////////////­//
> // CDeleteJed dialog
>
> CDeleteJed::CDeleteJed(CWnd* pParent /*=NULL*/)
> : CDialog(CDeleteJed::IDD, pParent)
> {
> //{{AFX_DATA_INIT(CDeleteJed)
> // NOTE: the ClassWizard will add member initialization here
> //}}AFX_DATA_INIT
>
> m_bDelete = 0;
>
> }
>
> void CDeleteJed::DoDataExchange(CDataExchange* pDX)
> {
> CDialog::DoDataExchange(pDX);
> //{{AFX_DATA_MAP(CDeleteJed)
> // NOTE: the ClassWizard will add DDX and DDV calls here
> //}}AFX_DATA_MAP
>
> }
>
> BEGIN_MESSAGE_MAP(CDeleteJed, CDialog)
> //{{AFX_MSG_MAP(CDeleteJed)
>     ON_WM_WINDOWPOSCHANGED()
> //}}AFX_MSG_MAP
> END_MESSAGE_MAP()
>
> ///////////////////////////////////////////////////////////////////////////­//
> // CDeleteJed message handlers
>
> BOOL CDeleteJed::OnInitDialog()
> {
> CDialog::OnInitDialog();
>
> CListCtrl *pList=(CListCtrl *)GetDlgItem(IDC_JED_LIST);
> pList->SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES );
>
> DrawCol();
>
> AddJedList();
>
> return TRUE;  // return TRUE unless you set the focus to a control
>               // EXCEPTION: OCX Property Pages should return FALSE
>
> }
>
>   CDeleteJed d(this);  goes into constructor and also oninit inturn
> DrawCol(); AddJedList(); successfully
> while          d.DoModal();   it goes into windows core files and
> crashes as u know.
>
> FYI   IDD code is correct from resource.h .....
>
> any comments
>
> Regds
> Neel
>
> On Jan 23, 7:24 pm, "Tom Serface" <tom.nos...(a)camaswood.com> wrote:
>
>
>
> > Hi Neel,
>
> > Could be something wrong in your dialog code. Could you post the start up
> > code for CDeleteJed? Is it just a small dialog.
>
> > Also, check to make sure you didn't load a different set of resources from
> > a
> > resource DLL that perhaps has a different ID number of dialog in the same
> > place as this one in your original code.
>
> > One more thought, and it's just a guess, but are you trying to close the
> > dialog automatically by pumping a message to it. Maybe the message is
> > getting processed before the dialog is done opening. That's not likely the
> > case, but ...
>
> > Tom
>
> > "Neel" <urn...(a)gmail.com> wrote in message
>
> >news:3a6924b6-7ade-42ec-9019-12bc5e3a11f6(a)1g2000hsl.googlegroups.com...
>
> > > Hi freinds,
>
> > > please help on debug assert error while using domodal().
>
> > > CDeleteJed d(this);
> > > d.DoModal();
>
> > > when i debug i found assert as followed
>
> > > =>
>
> > > VERIFY(RunModalLoop(dwFlags) == m_nModalResult);
>
> > > =>
>
> > > ASSERT(ContinueModal());
> > > // pump message, but quit on WM_QUIT
> > > if (!AfxPumpMessage()) {
> > > AfxPostQuitMessage(0);
> > > return -1;
>
> > > }
>
> > > =>
>
> > > BOOL AFXAPI AfxPumpMessage()
> > > {
> > > CWinThread *pThread = AfxGetThread();
> > > if( pThread )
> > > return pThread->PumpMessage();
> > > else
> > > return AfxInternalPumpMessage();
>
> > > }
>
> > > =>
> > > debug assertion failed . please help
>
> > > Thanks in adv.
> > > Neel- Hide quoted text -
>
> > - Show quoted text -- Hide quoted text -
>
> - Show quoted text -

From: Neel on
when i opt for RETRY

message
Unhandled exception at 0x1b97d783 (mfc71d.dll) in graf.exe: User
breakpoint. occurs

and stops at the code (appcore.cpp) shown below

#ifdef _DEBUG
void CWinApp::AssertValid() const
{
CWinThread::AssertValid();

ASSERT(afxCurrentWinApp == this);
ASSERT(afxCurrentInstanceHandle == m_hInstance); // CRASHES HERE
HERE
if (AfxGetThread() != (CWinThread*)this)
return; // only do subset if called from different
thread

if (m_pDocManager != NULL)
ASSERT_VALID(m_pDocManager);
}



if i select retry



On Jan 28, 3:04 pm, Neel <urn...(a)gmail.com> wrote:
> Yes Dialog is been created in other thread and i am trying to load
> same dialog in dll code.
>
> thanks
> Neel
>
> On Jan 26, 4:42 am, "Tom Serface" <tom.nos...(a)camaswood.com> wrote:
>
>
>
> > In addition to what AJay wrote could you be loading any DLLs that snag the
> > resources by calling AfxSetResourceHandle or by not using AFX_MANAGE_STATE?
>
> > Also, if your dialog code is being called from another thread (like another
> > thread is calling back into the GUI thread code) that could be the problem
> > (similar to what Ajay is suggesting).
>
> > Tom
>
> > "Neel" <urn...(a)gmail.com> wrote in message
>
> >news:3eacb113-901a-4c28-8c56-c35c0b933720(a)e25g2000prg.googlegroups.com...
> > Hi Tom thanking  you for post...
>
> > here is my dialog code..
>
> > ///////////////////////////////////////////////////////////////////////////­­//
> > // CDeleteJed dialog
>
> > CDeleteJed::CDeleteJed(CWnd* pParent /*=NULL*/)
> > : CDialog(CDeleteJed::IDD, pParent)
> > {
> > //{{AFX_DATA_INIT(CDeleteJed)
> > // NOTE: the ClassWizard will add member initialization here
> > //}}AFX_DATA_INIT
>
> > m_bDelete = 0;
>
> > }
>
> > void CDeleteJed::DoDataExchange(CDataExchange* pDX)
> > {
> > CDialog::DoDataExchange(pDX);
> > //{{AFX_DATA_MAP(CDeleteJed)
> > // NOTE: the ClassWizard will add DDX and DDV calls here
> > //}}AFX_DATA_MAP
>
> > }
>
> > BEGIN_MESSAGE_MAP(CDeleteJed, CDialog)
> > //{{AFX_MSG_MAP(CDeleteJed)
> >     ON_WM_WINDOWPOSCHANGED()
> > //}}AFX_MSG_MAP
> > END_MESSAGE_MAP()
>
> > ///////////////////////////////////////////////////////////////////////////­­//
> > // CDeleteJed message handlers
>
> > BOOL CDeleteJed::OnInitDialog()
> > {
> > CDialog::OnInitDialog();
>
> > CListCtrl *pList=(CListCtrl *)GetDlgItem(IDC_JED_LIST);
> > pList->SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES );
>
> > DrawCol();
>
> > AddJedList();
>
> > return TRUE;  // return TRUE unless you set the focus to a control
> >               // EXCEPTION: OCX Property Pages should return FALSE
>
> > }
>
> >   CDeleteJed d(this);  goes into constructor and also oninit inturn
> > DrawCol(); AddJedList(); successfully
> > while          d.DoModal();   it goes into windows core files and
> > crashes as u know.
>
> > FYI   IDD code is correct from resource.h .....
>
> > any comments
>
> > Regds
> > Neel
>
> > On Jan 23, 7:24 pm, "Tom Serface" <tom.nos...(a)camaswood.com> wrote:
>
> > > Hi Neel,
>
> > > Could be something wrong in your dialog code. Could you post the start up
> > > code for CDeleteJed? Is it just a small dialog.
>
> > > Also, check to make sure you didn't load a different set of resources from
> > > a
> > > resource DLL that perhaps has a different ID number of dialog in the same
> > > place as this one in your original code.
>
> > > One more thought, and it's just a guess, but are you trying to close the
> > > dialog automatically by pumping a message to it. Maybe the message is
> > > getting processed before the dialog is done opening. That's not likely the
> > > case, but ...
>
> > > Tom
>
> > > "Neel" <urn...(a)gmail.com> wrote in message
>
> > >news:3a6924b6-7ade-42ec-9019-12bc5e3a11f6(a)1g2000hsl.googlegroups.com...
>
> > > > Hi freinds,
>
> > > > please help on debug assert error while using domodal().
>
> > > > CDeleteJed d(this);
> > > > d.DoModal();
>
> > > > when i debug i found assert as followed
>
> > > > =>
>
> > > > VERIFY(RunModalLoop(dwFlags) == m_nModalResult);
>
> > > > =>
>
> > > > ASSERT(ContinueModal());
> > > > // pump message, but quit on WM_QUIT
> > > > if (!AfxPumpMessage()) {
> > > > AfxPostQuitMessage(0);
> > > > return -1;
>
> > > > }
>
> > > > =>
>
> > > > BOOL AFXAPI AfxPumpMessage()
> > > > {
> > > > CWinThread *pThread = AfxGetThread();
> > > > if( pThread )
> > > > return pThread->PumpMessage();
> > > > else
> > > > return AfxInternalPumpMessage();
>
> > > > }
>
> > > > =>
> > > > debug assertion failed . please help
>
> > > > Thanks in adv.
> > > > Neel- Hide quoted text -
>
> > > - Show quoted text -- Hide quoted text -
>
> > - Show quoted text -- Hide quoted text -
>
> - Show quoted text -

From: David Wilkinson on
Neel wrote:
> Yes Dialog is been created in other thread and i am trying to load
> same dialog in dll code.

Neel:

It is always a bad idea to have GUI components in any secondary thread. I would
advise you to change your design.

--
David Wilkinson
Visual C++ MVP