社区
ATL
帖子详情
有没人用过Visual Studio .NET 2003,进来一下
PP_Sky
2003-07-24 09:48:58
我把我用atl写的com拿到 vs.net 2003下编译时出现以下错误:
C1001: 内部编译器错误
(编译器文件“msc1.cpp”的第 2701 行)
。请选择 Visual C++
“帮助”菜单上的“技术支持”命令,或打开技术支持帮助文件获得详细信息
但错误都定位到系统的头文件里,
这个项目的文件肯定没有问题,在vc 6.0和vc.net 2002里都通过了,请问有没有人知道怎么解决??~~
...全文
98
23
打赏
收藏
有没人用过Visual Studio .NET 2003,进来一下
我把我用atl写的com拿到 vs.net 2003下编译时出现以下错误: C1001: 内部编译器错误 (编译器文件“msc1.cpp”的第 2701 行) 。请选择 Visual C++ “帮助”菜单上的“技术支持”命令,或打开技术支持帮助文件获得详细信息 但错误都定位到系统的头文件里, 这个项目的文件肯定没有问题,在vc 6.0和vc.net 2002里都通过了,请问有没有人知道怎么解决??~~
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
arxing
2003-08-03
打赏
举报
回复
我说过肯定是预编译的问题嘛。
出错的原因很多,往往是不小心没有注意到某些小节而造成。许多头文件是相关的,它们的次序不能颠倒,把某些头文件放在预编译头文件里面是强制它在相对最前面的位置,你不放也可以解决这个问题。另外,有时候还得注意编译开关,名字空间,以及class, function相互引用的问题,它们也决定了头文件的次序。
总之,你把每个obj单独看待,细心一点就很容易发现问题的所在了。
PP_Sky
2003-08-03
打赏
举报
回复
不用了,有人帮我搞掂了,把 atlcoll.h放到stdafx.h里预编译就行了;不过还是不明白为什么............. :(
PP_Sky
2003-08-02
打赏
举报
回复
to arxing(阿行):
你还是先学一下用VS再说吧,编译时cl内部错误,又何来跟踪调试???
to lygfqy(风清扬):
我也认为是编译选项的问题,不过我以经找他改成和2002一样还不行::
我试了一下,在用了atl的项目里,如果像以下这样的代码就不能通过:
template <typename T>
class Cobj
{
public:
T AA(void);
};
template<typename T>
inline T Cobj::AA()
{
.........................//用到了ATL Collection里面的东西,不用有时能通过
}
改成以下时又能通过:
template <typename T>
class Cobj
{
public:
inline T AA()
{
.........................//用到了ATL Collection里面的东西,不用有时能通过
};
};
arxing
2003-08-02
打赏
举报
回复
这样吧,你自己给我搞一个项目,编译不过的,发到我的信箱chenjx@dhyit.com。不要大,把不必要的东西删去,只要把错误搞出来就行了。
PP_Sky
2003-08-02
打赏
举报
回复
不好意思,贴不了个<T>
不过就算少了个<T> 也不是编译器内部错误吧??!!
to arxing(阿行):
我想你应该知道编译器内部错误和语法错误的区别吧
arxing
2003-08-02
打赏
举报
回复
不要怪编译器了,我试了,都用得好好的。
从这一小段代码看出你的程序一定存在不少问题,只是vs 2002侥幸给你过了。你还是脚踏实地,慢慢来吧。
arxing
2003-08-02
打赏
举报
回复
跟踪调试是对 herosword(南) 说的。
template <typename T>
class Cobj
{
public:
T AA(void);
};
template<typename T>
inline T Cobj::AA()
{
.........................//用到了ATL Collection里面的东西,不用有时能通过
}
本来就错误,正确的语法是:
template<typename T>
inline T Cobj<T>::AA()
{
.........................//用到了ATL Collection里面的东西,不用有时能通过
}
我一直用得挺好。
lygfqy
2003-08-01
打赏
举报
回复
会不会是因为编译选项的关系呢?多找找,应该可以通过的
arxing
2003-08-01
打赏
举报
回复
装好了,试了一下,蛮好,我觉得楼主的问题还是在自身。
PP_Sky
2003-08-01
打赏
举报
回复
to arxing(阿行):
安装2003并不需要2002的盘。
VS上的bug也不是一个两个的事, 只不过编译器上出bug比较少而以
arxing
2003-08-01
打赏
举报
回复
那是你的程序隐藏着缺陷,只是在2002没有表现出来而已。
你碰到问题就应该先采用跟踪调试的方式,没确定之前就不要怪编译器。
herosword
2003-08-01
打赏
举报
回复
我用vs2002编译的com在vs2003中也可以编译和使用,但是用vs2003编译的com用ole/view查看却总是地址冲突报错,但查看2002bian编译的com就没有问题。
怎么回事呀。
arxing
2003-07-30
打赏
举报
回复
我昨天买了.net 2003的盘,但是装不上,7 张盘下面都找不到一些升级必备的文件。原来硬盘上有个.net 2002的安装盘,但是不小心被我搞坏了//.net root/windows updata/step.sdb文件,所以也没法升级。可否提供这个文件给我165546@21cn.com?
我相信不会是vc的bug,一定是别的地方没有做好,理论上只要是语法合适的cpp文件,肯定可以编译。
PP_Sky
2003-07-29
打赏
举报
回复
好像用到template时就很多错
arxing
2003-07-27
打赏
举报
回复
估计是预编译设置的问题。
如果你这个cpp设置为使用预编译,那么你就得把#include "stdafx.h"放在最前面,反过来,如果你不使用预编译,不能包含"stdafx.h"。
firingme
2003-07-27
打赏
举报
回复
http://www.sgi.com/tech/stl/stdlib_20000608.zip
这个包里面是SGI STL with IOStream的版本,2002下面能正常编译
拿到2003下面就有C1001错误,和楼主所述的一样!
RomanticProgrammer
2003-07-27
打赏
举报
回复
gz
PP_Sky
2003-07-27
打赏
举报
回复
我也认为不是预编译的问题。
内部编译器错误
(编译器文件 file,第 number 行)
编译器无法生成正确的构造代码,原因可能是出自表达式与优化选项的组合。尝试移除一个或多个优化选项,并重新编译包含错误信息所指示的行的函数。
以下是MSDN的说明,但问题是我根本就没有开任何的优化选项。
通过移除一个或多个优化选项有可能解决该问题。若要确定哪一个选项出了问题,请一次移除一个选项并重新编译,直到错误信息消失为止。通常最有可能导致此错误的选项有 /Og、/Oi 和 /Oa。确定了哪一个选项是症结所在后,则可以对发生错误的函数使用 optimize 杂注来禁用它,并为模块的其余部分继续使用该选项。
尝试重写报告错误的行或围绕该行周围的若干行。如果这不起作用,请与 Microsoft 产品支持服务联系。
firingme
2003-07-27
打赏
举报
回复
这个C1001的确很头疼的!
我也碰到过很多次这样的情况,代码在其他地方都能正常工作,可是到了VS2003下面,就C1001
我觉得这真是VS2003的一个大BUG
arxing(阿行) 说:
*******************************************************************************
估计是预编译设置的问题。
如果你这个cpp设置为使用预编译,那么你就得把#include "stdafx.h"放在最前面,反过来,
如果你不使用预编译,不能包含"stdafx.h"。
*******************************************************************************
如果是预编译的问题,那么出错信息将不会是C1001,会提示用户预编译不对头。
brave_heart
2003-07-26
打赏
举报
回复
>C1001: 内部编译器错误
It is a bug of Visual Studio.
加载更多回复(3)
用两个摄像头实现,双目标定,双目测距,双目测深度,双目求深度程序v2(基于opencv2.4.9,不需要扩展库)
3.
visual
studio
2013 4.两颗微软HD-3000摄像头 5.i7、集显、16g、sata ps:如果你下载了我之前的代码:http://download.csdn
.net
/detail/hysteric314/9514872, 那这个你就不需要下载了,只需要改
一下
之前的代码 ...
用C#做学习型人脸识别程序(尝鲜版)
开发者可以利用
Visual
Studio
等IDE进行调试,查看程序运行时的数据和流程。 通过这个项目,开发者不仅可以掌握C#编程和Windows Forms的基本用法,还能深入了解人脸识别技术的原理和应用。同时,对于想要进一步提升...
Visual
Studio
.NET
2003
开发环境
昨天到今天搞了一整天,把人都要差点搞崩了! ,以后再也不能乱关机了,因为这次的大意,几乎所有的Net安装,调试问题都被我碰到了,还好,我...重新打开正在Vs
2003
.Net
里面正在作的项目时,老半天没反应,机子变得异常慢,
Visual
Studio
.NET
简介
Visual
Studio
.NET
详解 2008-12-08 17:09
Visual
Studio
.NET
简介
Visual
Studio
.NET
是
.NET
平台下最为强大的开发工具,无论是软件服务商,还是企业应用程序的部署与发布,
Visual
Studio
.NET
都可以提供...
在控制台编译
Visual
Studio
.NET
2003
的工程文件或解决方案文件
Visual
Studio
.NET
2003
をコマンドプロンプトから操作してビルドできるの知らなかった。さっき知った。 コマンドプロンプトから
.NET
のコードをビルドするには、
.NET
Framework 1.1まではcscとかvbcとかにオプション...
ATL
3,248
社区成员
48,529
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章