编译没问题,运行出错,怎么回事?急!!!!!!!!!!!!!!

Metrosexual 2011-01-13 05:02:05
vs2008 编译没有问题,但是运行的时候就出错:

microsoft visual c++ runtime library

Runtime error

program: .....exe

abnormal program ternination

确定

注: 是在用到第三方库的时候这样的,但把调用第三方库函数注释掉后,就不会

请问各位大侠是不是我自己调用错了,但是编译通过了,还是其他什么原因,虚心请教,

这个问题烦了很久,一直没解决!
...全文
2310 30 打赏 收藏 转发到动态 举报
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
lflljt 2012-02-01
  • 打赏
  • 举报
回复
又遇到同样的问题了。。。
上次的是因为调用的时候dll函数名字写错了,这次不知道怎么办了。
--
还有,在release下是正常运行的,debug下的就报这个错了。
搜了下,有的说,这个错误的一般原因是内存调用不当所致的。

楼主解决了,记得说下怎么做的。谢谢。
onlyliu 2011-02-10
  • 打赏
  • 举报
回复
又或者是编译的对齐方式不一致?
kvls 2011-02-10
  • 打赏
  • 举报
回复
看看你的运行时库的设置是否是一样的,静态链接的运行时,动态连接的?and so on....
schlafenhamster 2011-02-08
  • 打赏
  • 举报
回复
Boards[0]的定义?
//
Board Boards[2];
wefzzps2 2011-02-07
  • 打赏
  • 举报
回复
我也遇到了这个问题,不过我请教了一下高手,他们让我用全部重建问题就解决了,反正我是这么干的,不知道你的问题适不适用
ningweidong 2011-01-14
  • 打赏
  • 举报
回复
你设个断点,跟着走,看哪一步出错了。
varding 2011-01-14
  • 打赏
  • 举报
回复
我们不知道你使用的库是什么样子的,大家只能帮你猜问题在哪儿了,我还是建议你新建一个工程测试下vs里使用这个库是不是正常的,一步步排除错误吧

你把Boards数组定义的地方贴出来看看吧
Metrosexual 2011-01-14
  • 打赏
  • 举报
回复
[Quote=引用 22 楼 varding 的回复:]
引用 20 楼 eamoon2008 的回复:

引用 19 楼 visualeleven 的回复:
引用 17 楼 eamoon2008 的回复:
引用 16 楼 heksn 的回复:
调试运行 查看callstack

chaxun.exe 中的 0x7c812afb 处最可能的异常: Microsoft C++ 异常: 内存位置 0x0012d458 处的 Euresys::M……
[/Quote]
下面是头文件的声明:
class Board
MCPP_API Channel(Board *board, const char *connector);

Channel *channel = new Channel (Boards[0], MC_Connector_VID1);//这句是例子里的原句!
//我在BCB 里也这样用了没问题!!
varding 2011-01-14
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 eamoon2008 的回复:]

引用 19 楼 visualeleven 的回复:
引用 17 楼 eamoon2008 的回复:
引用 16 楼 heksn 的回复:
调试运行 查看callstack

chaxun.exe 中的 0x7c812afb 处最可能的异常: Microsoft C++ 异常: 内存位置 0x0012d458 处的 Euresys::MultiCam::Exception。

调用堆……
[/Quote]
channel = new Channel(Boards[0], connector);

你调用的时候参数类型对不对?

MCPP_API Channel(Board *board, int connector);

这儿定义的是Board *board,Boards是指针数组还是Board 数组?
Metrosexual 2011-01-14
  • 打赏
  • 举报
回复
我只是按这些函数的原型来调用的,是第三方库的, 编译可以过哪不是说明没用错吗?、
怎么还运行报错啊???
Metrosexual 2011-01-14
  • 打赏
  • 举报
回复
[Quote=引用 19 楼 visualeleven 的回复:]
引用 17 楼 eamoon2008 的回复:
引用 16 楼 heksn 的回复:
调试运行 查看callstack

chaxun.exe 中的 0x7c812afb 处最可能的异常: Microsoft C++ 异常: 内存位置 0x0012d458 处的 Euresys::MultiCam::Exception。

调用堆栈:
> kernel32.dll!7c812afb(……
[/Quote]
知道,
channel = new Channel(Boards[0], connector);//Channel 是第三方库里面的一个类,程序到这 就会运行错误 就这句!!!

下面是Channel 类的里面的
#define MCPP_API __declspec(dllimport)
MCPP_API Channel(Board *board, int connector);

请部长再指点下!
Eleven 2011-01-14
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 eamoon2008 的回复:]
引用 16 楼 heksn 的回复:
调试运行 查看callstack

chaxun.exe 中的 0x7c812afb 处最可能的异常: Microsoft C++ 异常: 内存位置 0x0012d458 处的 Euresys::MultiCam::Exception。

调用堆栈:
> kernel32.dll!7c812afb()
[下面的框架可能不正确和/或缺失,没有为……
[/Quote]
你要先找到出错的函数,知道在哪个函数出错的吗?
Eleven 2011-01-14
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 mayudong1 的回复:]
部长一定回答:点重试,打开callstack窗口看看是在那个函数出的错
[/Quote]
你知道了太多了,哈哈
Metrosexual 2011-01-14
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 heksn 的回复:]
调试运行 查看callstack
[/Quote]
chaxun.exe 中的 0x7c812afb 处最可能的异常: Microsoft C++ 异常: 内存位置 0x0012d458 处的 Euresys::MultiCam::Exception。

调用堆栈:
> kernel32.dll!7c812afb()
[下面的框架可能不正确和/或缺失,没有为 kernel32.dll 加载符号]
kernel32.dll!7c812afb()
multicam.dll!52011b2f()
msvcrt.dll!77bf272c()
EEmcMs60.dll!6980de37()
TFWAH.dll!029e88fb()
TFWAH.dll!029efd01()
TFWAH.dll!029f6d3e()
TFWAH.dll!029efd10()
multicam.dll!520396be()
ntdll.dll!7c92d39a()
ntdll.dll!7c93a4d5()
ntdll.dll!7c93a5fe()
ntdll.dll!7c94770a()
ntdll.dll!7c947784()
ntdll.dll!7c947784()
ntdll.dll!7c947784()
> ntdll.dll!7c947784()
ntdll.dll!7c98f8cc()
ntdll.dll!7c96bc4c()
ntdll.dll!7c98f8cc()
ntdll.dll!7c96bc4c()
ntdll.dll!7c947784()

是什么意思啊?? 向大侠请教
  • 打赏
  • 举报
回复
调试运行 查看callstack
varding 2011-01-13
  • 打赏
  • 举报
回复
你在vc里搞个测试工程试试吧,先看vs2008调用有没有问题,然后用不同的参数看看有没有问题,一步步排除
Metrosexual 2011-01-13
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 varding 的回复:]
第三方库有没有例子?或者你新建个测试工程看看那个库能不能用,也许你用法不对
[/Quote]
这个库一直在BCB里用没问题的,库是没问题!

想知道一般出这种错误的原因是什么?
varding 2011-01-13
  • 打赏
  • 举报
回复
第三方库有没有例子?或者你新建个测试工程看看那个库能不能用,也许你用法不对
Metrosexual 2011-01-13
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 mayudong1 的回复:]
部长一定回答:点重试,打开callstack窗口看看是在那个函数出的错
[/Quote]

这怎么看啊,提示说没有源代码符号加载,只能显示反编译,
Metrosexual 2011-01-13
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 varding 的回复:]
运行的时候dll文件带了吗?是release版本的吗?
[/Quote]
Debug 和Release 下运行都是一样的报错!

大家以前遇到类似的问题什么怎么解决的啊???
加载更多回复(10)

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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