苦恼:为什么一给控件添加变量,程序就出错!

yyxc306 2005-10-21 11:51:31
为了给一程序添加功能,加上一控件(例如CEdit控件),不给此控件加变量没问题,一加上就报错,调试报错信息如下(报错地点在下面代码中标注):

output报错信息是:
First-chance exception in VideoTool.exe: 0xC0000005: Access Violation.
弹出窗口的报错信息是
Unhandled exception in VideoTool.exe: 0xC0000005: Access Violation.

BOOL CVideoToolApp::InitInstance()
{
AfxEnableControlContainer();

#ifdef _AFXDLL
Enable3dControls(); // Call this when using MFC in a shared DLL
#else
Enable3dControlsStatic(); // Call this when linking to MFC statically
#endif

CVideoToolDlg dlg;
m_pMainWnd = &dlg; //调试到这步报错,奇怪的是偶尔会不报错成功运行程序!

.........
.......
}
这是怎么回事啊?
...全文
1042 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
yyxc306 2005-11-07
  • 打赏
  • 举报
回复
为什么有时候代码对的,却编译报错:Cannot open precompiled header ,或者类的成员不能出来?
1。检查 *.cpp 里有没有包含 #include "stdafx.h"
2。删除 debug 目录
3。删除 *.ncb文件 支持ClassView
4。删除 *.clw文件 支持ClassWizard
5。删除 *.aps文件 支持ResourceView
6。删除 *.opt文件 保存工作空间的配置(如果删除此文件,特殊的工作空间配置丢失,按照默认的设置)

请 按步骤解决!如果该步骤解决问题了,别再执行下面的步骤!
请注意我的提醒: A 代码是对的 B 该步骤解决问题了,别再执行下面的步骤!
yyxc306 2005-11-03
  • 打赏
  • 举报
回复
问题解决,我将.ncb和.opt文件删除后,重新编译,就OK了,晕死,
垃圾VC,害死我了!!!
yyxc306 2005-10-25
  • 打赏
  • 举报
回复
没有用"类VC界面"上面的代码,有IDC_EDIT3这个ID,Edit控件就是这个名字,因为老是出错,我就随便添加个Edit,没改名字,

Mackz(在相互)那个回复是什么意思?
yyxc306 2005-10-21
  • 打赏
  • 举报
回复
goodboyws(深夜不眠者)

你知道怎么会报上面的错吗?为什么会提示 " 非法访问"!
yyxc306 2005-10-21
  • 打赏
  • 举报
回复
void CVideoToolDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CVideoToolDlg)
DDX_Control(pDX, IDC_PROGRESS1, m_Progress);
DDX_Control(pDX, IDWINDOW0, m_windowa);
DDX_Control(pDX, IDC_STATI, m_Picture);
DDX_Control(pDX, IDC_LIST1, m_ListCtrl);
DDX_Text(pDX, IDC_EDIT3, m_strContext); //这是我加的,上面的是原来代码就
//有的
//}}AFX_DATA_MAP
}
yyxc306 2005-10-21
  • 打赏
  • 举报
回复
我直接在CLASSWIZARD里加的,CEdit加CString 变量,有什么错,就加这一个,它就出错!晕死
goodboyws 2005-10-21
  • 打赏
  • 举报
回复
看看你的DoDataExchange
yyxc306 2005-10-21
  • 打赏
  • 举报
回复
原来程序是没问题的,加上控件,我只将一个控件添加变量,其它什么都没动,

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

CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
SysMenu->AppendMenu(MF_STRING,IDM_ABOUTBOX,strAboutMenu);
}
}

// Set the icon for this dialog. The framework does this automatically
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon

// TODO: Add extra initialization here
CenterWindow();

m_ListCtrl.InsertColumn(0, "ID", LVCFMT_LEFT, 40);
m_ListCtrl.InsertColumn(1, "姓名", LVCFMT_LEFT,60);
m_ListCtrl.InsertColumn(2, "性别", LVCFMT_LEFT,40);
m_ListCtrl.InsertColumn(3, "日期", LVCFMT_LEFT, 85);
m_ListCtrl.SetExtendedStyle(LVS_EX_FULLROWSELECT| LVS_EX_GRIDLINES);
m_query.Format("select * from db1");
RefreshData();

//setfocus the last item
int nCount = m_ListCtrl.GetItemCount();
m_ListCtrl.EnsureVisible(nCount-1, FALSE);
m_ListCtrl.SetHotItem(nCount-1);
m_ListCtrl.SetSelectionMark(nCount-1);

return TRUE; // return TRUE unless you set the focus to a control
}
goodboyws 2005-10-21
  • 打赏
  • 举报
回复
是否添加变量对应的ID不正确,或者添加整形变量后用了SetWindowText("");
goodboyws 2005-10-21
  • 打赏
  • 举报
回复
是否添加变量对应的ID不正确,或者添加整形变量后用了SetWindowText("");
goodboyws 2005-10-21
  • 打赏
  • 举报
回复
控件变量添加的不对
guosenjuncs 2005-10-21
  • 打赏
  • 举报
回复
把你的对话框的代码贴以下,我估计你的对话框的初始化有问题呢
yyxc306 2005-10-21
  • 打赏
  • 举报
回复
应该不是的,这该是VC自动生成的,这是一个只有对话框的程序,没有文档
wltg2001 2005-10-21
  • 打赏
  • 举报
回复
你的代码我看不太懂,dlg应该是一个对话框类的对象,m_pMainWnd应该是应用程序类的一个成员变量,指向CWnd,是不是问题出在这里。
zhaogaojian 2005-10-21
  • 打赏
  • 举报
回复
你是不是用了那个"类VC界面"上面的代码呀,如果是的话,需要做一些改动
只需重载一下
PreTranslateMessage(MSG* pMsg)
BOOL CMyDialog::PreTranslateMessage(MSG* pMsg)
{
if(pMsg->message == WM_KEYDOWN && pMsg->wParam == VK_RETURN)
{
return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}

,虽然搞不明白为什么会出现这个问题
goodboyws 2005-10-21
  • 打赏
  • 举报
回复
没有IDC_EDIT3这个ID
菜牛 2005-10-21
  • 打赏
  • 举报
回复
//setfocus the last item
--------
...
return TRUE; // return TRUE unless you set the focus to a control
--------------------------------------

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧