VS2008 LINK : fatal error LNK1104: cannot open file 'atls.lib'错误解决方案

用VS 2008编写ATL的64位应用程序时,提示链接错误:
VS2008 LINK : fatal error LNK1104: cannot open file 'atls.lib'


问题原因

VS 2008默认并不包含ATL x64的库,需要参照以下文档自行编译,但是编译过程会出错。
C:Program Files (x86)Microsoft Visual Studio 9.0VCatlmfcsrc eadme.txt

解决方案

通过测试我发现,其它高版本VS,如VS 2013等,是自带ATL x64库的,并且可以直接用这个库在低版本VS 2008中使用。

1. 首先把以下路径加入VS2008的lib中
$(VCInstallDir)atlmfclibamd64

2. 安装VS 2013,从以下路径拷贝atls.lib
C:Program Files (x86)Microsoft Visual Studio 12.0VCatlmfclibamd64atls.lib

3. 将上面拷贝的atls.lib粘贴到以下路径
C:Program Files (x86)Microsoft Visual Studio 9.0VCatlmfclibAMD64atls.lib
C:Program Files (x86)Microsoft Visual Studio 9.0VCatlmfclibAMD64atlsd.lib

由atlsd.lib是atls.lib库的Debug版本,由于atlsd.lib在高版本VS中也不存在,因此只好用其Release版本代替,经测试可以使用。

原文地址:https://www.cnblogs.com/zjoch/p/5775388.html