Release MiniSize
Release MinDependecy
Unicoude Release MinSize
Unicoude Release MinDependency
之间有什么区别呀?都在什么情况下使用?编程的时候要注意些什么?
******************************************************************************************
若将“常规”属性页中的“ATL 的使用”属性设置为“静态链接到 ATL”,并将“代码生成”属性页中的“运行时库”属性设置为“单线程 (/ML)”或“多线程 (/MT)”(在 C/C++ 文件夹中),则为 MinDependency 配置。
若将“常规”属性页中的“ATL 的使用”属性设置为“动态链接到 ATL”,并将“在 ATL 中最小使用 CRT”设置为“是”,或将“代码生成”属性页中的“运行时库”属性设置为“多线程 DLL (/MD)”(在 C/C++ 文件夹中),则为 MinSize 配置。
MinSize 使得输出文件尽可能地小,但要求在目标计算机上安装 ATL71.dll 和 MSVCR71.dll(如果选中了“多线程 DLL (/MD)”选项)。ATL71.dll 应在目标计算机上注册,以确保具有所有 ATL 功能。要注意,ATL DLL 的 ANSI 和 Unicode 版本具有相同的名称:ATL71.dll。不能在 Windows 98 或 Windows Me 计算机上重新发布 Unicode 版本;必须用 ANSI 版本(位于产品 CD 或 DVD 的 Win\System\Ansi 文件夹中)。
如果为 MinDependency 目标生成 ATL 或 OLE DB 模板项目,则不需要在目标计算机上安装和注册 ATL71.dll,虽然可能获得较大的程序映像。
******************************************************************************************
我的工程在DEBUG中连接没有问题,可是设置为release mindependency确保错如下:
Generating Code...
Linking...
Creating library ReleaseMinDependency/RemoteUnlock.lib and object ReleaseMinDependency/RemoteUnlock.exp
LIBCMT.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
ReleaseMinDependency/RemoteUnlock.dll : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
不知道什么问题,借用宝地请帮忙
你用了一些_ATL_MIN_CRT条件下,不支持的CRT函数,去掉_ATL_MIN_CRT