欢迎使用CSDN-markdown编辑器

来源:互联网 发布:猎豹刷票软件 编辑:程序博客网 时间:2024/06/11 16:03

如何使atl程序不依赖atlxx.dll

使用atl生成的dll,无论在项目属性里面设置在静态库中使用atl还是不使用atl,编译输出的dll中都有atlxx.dll的依赖。
后来发现_ATL_DLL 是影响程序是否引用atlxx.dll的开关。
于是在 头文件中加入如下的代码,就ok了。

#pragma once#ifndef STRICT#define STRICT#endif// Modify the following defines if you have to target a platform prior to the ones specified below.// Refer to MSDN for the latest info on corresponding values for different platforms.#ifndef WINVER              // Allow use of features specific to Windows XP or later.#define WINVER 0x0501       // Change this to the appropriate value to target other versions of Windows.#endif#ifndef _WIN32_WINNT        // Allow use of features specific to Windows XP or later.                   #define _WIN32_WINNT 0x0501 // Change this to the appropriate value to target other versions of Windows.#endif                      #ifndef _WIN32_WINDOWS      // Allow use of features specific to Windows 98 or later.#define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later.#endif#ifndef _WIN32_IE           // Allow use of features specific to IE 6.0 or later.#define _WIN32_IE 0x0600    // Change this to the appropriate value to target other versions of IE.#endif#define _ATL_APARTMENT_THREADED#define _ATL_NO_AUTOMATIC_NAMESPACE#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS  // some CString constructors will be explicit#define _USING_V110_SDK71_                  //兼容XP平台,// static link to atlxx.lib  // must placed before atlbase.....#undef  _ATL_DLL        #include <atlbase.h>#include <atlcom.h>#include <atlwin.h>#include <atltypes.h>#include <atlctl.h>#include <atlhost.h>using namespace ATL;
0 0