vs2005的一些配置问题

一、vs2005/8 没有找到MFC80D.DLL,因此这个程序未能启动.重新安装应用程序可能...

解决方法:删除程序目录下Debug文件夹和Release文件夹,然后重新编译执行。

=======================================网上其他方法===================================

方法一:
没有找到MFC80D.DLL的解决方法。问题出现在程序运行清单上,默认是"嵌入清单",清单文件是 "$(IntDir\$(TargetFileName).embed.manifest"。调试程序运行时,不知道为什么却定位不到这个文件,我们如果手动把"程序名.embed.manifest"改为"程序名.manifest",调试程序即可定位到。

方法二:
在C:\Program Files\Microsoft Visual Studio 8\VC\redist\Debug_NonRedist\x86\Microsoft.VC80.DebugCRT 下找到了下列文件:
msvcm80d.dll
msvcp80d.dll
msvcr80d.dll
Microsoft.VC80.DebugCRT.manifest
把这几个文件拷贝到目标机器上,与运行程序同一文件夹或放到system32下,就可以运行那个程序了。

方法三:
修改编译选项,将/MD或/MDd 改为 /MT或/MTd,这样就实现了对VC运行时库的静态链接,在运行时就不再需要VC的dll了。


二、在VS2005/VS2008环境中配置DirectShow

1. 安装工具

visual studio 2005 和 DirectX 9.0 SDK

2. 设置编译环境:


 

编译时错误解决方法:

   winnt.h(222) : error C2146:syntax error : missing ';' before identifier 'PVOID64'
   winnt.h(222) : error C4430:missing type specifier - int assumed. Note: C++ does not supportdefault-int
   winnt.h(5940) : error C2146:syntax error : missing ';' before identifier 'Buffer'
  错误发生在:operator=(LONG);函数定义中,这是因为在VC6中,如果没有显示的指定返回值类型,编译器将其视为默认整形;但是vs2005不支持默认整形,解决这个问题不能修改每个没有显示指示返回值类型的函数地方,可以用wd4430来解决;具体的在打开project->BaseClassesproperties->configuration->C/C++->Command Line中添加/wd4430即可。


BaseClasses\ctlutil.h(278) : error C4430: missing type specifier- int assumed. Note: C++ does not support default-int
这个错误,解决方法如上:打开project->BaseClassesproperties->configuration->C/C++->Command Line,增加/wd4430选项。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值