j'ai ce bug à chaque fois que j'execute mon programme
c'est sans gravité , si je fais continue le programme marche derriere, mais j'aimerais bien le supprimer
merci beaucoup
http://img32.imageshack.us/img32/8262/bugvwl.png
j'ai ce bug à chaque fois que j'execute mon programme
c'est sans gravité , si je fais continue le programme marche derriere, mais j'aimerais bien le supprimer
merci beaucoup
http://img32.imageshack.us/img32/8262/bugvwl.png
Et c'est quoi le bug ? On doit le deviner ?
Raymond
Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi
CafuroCafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
e-verbeUn logiciel de conjugaison des verbes de la langue française.
Ma page personnelle sur DVP.
si tu veux j'ai ça :
si je clique ignorer derrier ça marche
mais si je pouvais supprimer ce bug ce serait bien
l'erreur vient peut-etre du cursor d'après le message sur la 1ere image
les seuls appel dans mon programme sont
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53 ON_WM_SETCURSOR() //dans le begin message map ... HCURSOR CLEMonitorDlg::OnQueryDragIcon() { return (HCURSOR) m_hIcon; } ........ BOOL CLEMonitorDlg::PreTranslateMessage(MSG* pMsg) { // Hide the tooltip on keyboard and mouse button events HIDE_TOOL_TIP_ON_KB_AND_MB_EVENTS(m_ttce) // Double clicking in node list if (pMsg->hwnd == m_lstNode.GetSafeHwnd()) { // Left double-clicking copies the list entry to the Update fields // and the node id field if (pMsg->message == WM_LBUTTONDBLCLK) { int n = m_lstNode.GetCurSel(); if (n >= 0) { m_nNodeId = m_lstNode.GetItemData(n); } } } return CDialog::PreTranslateMessage(pMsg); } //----------------------------------------------------------------------------- /** \brief Handles tool tip text for all controls * * The macros used in this function is defined in the class CToolTipCtrlEx. * The text macros is defined in the header file ToolTipText.h */ //----------------------------------------------------------------------------- BOOL CLEMonitorDlg::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message) { BEGIN_TOOL_TIP_MAP(m_ttce) { REG_TOOL_TIP(m_ttce, m_frmSendMessage, pWnd, TIP_SEND_MESSAGE) REG_TOOL_TIP(m_ttce, m_frmMessageLog, pWnd, TIP_LOG_MESSAGE) REG_TOOL_TIP(m_ttce, m_frmNodeList, pWnd, TIP_NODE_LIST) REG_TOOL_TIP(m_ttce, *m_pCmbComPort, pWnd, TIP_CMB_COM_PORT) } END_TOOL_TIP_MAP(m_ttce) return CDialog::OnSetCursor(pWnd, nHitTest, message); }
salut,
déjà 1er problème, le source affiché dans le debugger ne correspond pas à une version MFC42 (VC6) -> la classe _AFX_MOUSEANCHORWND n'existait pas à cette époque
ensuite, le call stack indique que c'est dans CScrollView::OnPrepareDC()
et là, il y a un certain nombre d'ASSERT ... procure toi les bons sources MFC
@+
merci
le projet est compilé en VC++6, mais j'ai utilisé le debugger de VS2005
sinon si l'erreur vient du CScrollView::onpreparedc
c'est bizarre parce que je lance effectivement une CScrollView à l'initDialog du dialogue principal
comme ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 //CCreateContext pContext; CWnd* pFrameWnd = this; pContext.m_pCurrentDoc = new CMyDocument; pContext.m_pNewViewClass = RUNTIME_CLASS(CMyVw); pView =(CMyVw *) ((CFrameWnd*)pFrameWnd)->CreateView(&pContext); ASSERT(pView); pView->ShowWindow(SW_NORMAL); CRect rectWindow; //GetWindowRect(rectWindow); rectWindow.top=400; rectWindow.bottom=800; rectWindow.left=10; rectWindow.right=410; pView->MoveWindow(rectWindow);
par contre ma CScrollView ne (re)définit pas de OnPrepareDC
est-ce que ASSERT(pView) appelle OnPrepareDC?
c'est dans VIEWSCRL.CPP ligne 134, comme indiqué dans la boite de dialogue
reste à consutler les sources MFC (les bons, ceux de VC6) pour voir pourquoi ...
@+
Partager