From 3f66d89da4651307b85e14044230a6a122867e8a Mon Sep 17 00:00:00 2001 From: mingkuang Date: Fri, 26 May 2017 19:23:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=A9=E5=85=85guard=5Fsupport.obj=EF=BC=8C?= =?UTF-8?q?=E5=B9=B6=E4=B8=94=E6=9B=B4=E6=96=B0readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ReadMe.md | 19 ++++++++++++++----- _msvcrt.h | 19 ++++++++++++++++++- x64/vc140.lib | Bin 181910 -> 197650 bytes x64/vc140xp.lib | Bin 235934 -> 251670 bytes x64/vc141.lib | Bin 186046 -> 202274 bytes x64/vc141xp.lib | Bin 242632 -> 258862 bytes x86/vc140.lib | Bin 163122 -> 177566 bytes x86/vc140xp.lib | Bin 269136 -> 283582 bytes x86/vc141.lib | Bin 163770 -> 178274 bytes x86/vc141xp.lib | Bin 216742 -> 231248 bytes 10 files changed, 32 insertions(+), 6 deletions(-) diff --git a/ReadMe.md b/ReadMe.md index 293a18c7b..3bfae54f6 100644 --- a/ReadMe.md +++ b/ReadMe.md @@ -17,18 +17,27 @@ VC LTL 是一个开源的第三方修改VC库,大家都可以免费,无条 * 支持编译器最新特性,异常流防护(guard:cf)、静态对象线程安全初始化(threadSafeInit)……统统放马过来吧~ ## 支持平台 -### 支持的IDE: +### 支持的IDE * Vistual Studio 2015 * Vistual Studio 2017 -### 支持的操作系统: -* Windows XP, Windows XP 64, Windows 2003(平台工具集需要调整为 XP mode) +### 支持的目标平台(UCRT版本) +* Windows XP平台工具集(Windows 7.0 SDK & Windows 10 10240 UCRT) +* Windows 10 10240目标平台 +* Windows 10 14393目标平台(强烈建议使用15063,下个Windows SDK发布时将删除对14393的支持!) +* Windows 10 15063目标平台(推荐使用) + +> 目标平台并不影响你的程序兼容老版本Windows(比如Windows XP),一般我们都推荐大家使用高版本目标平台。 + +### 支持的操作系统 +* Windows XP, Windows XP 64, Windows 2003(平台工具集需要调整为 Windows XP平台工具集) * Windows Vista, Windows 2008 * Windows 7, Windows 2008 R2 * Windows 8, Windows 2012 * Windows 8.1, Windows 2012 R2 * Windows 10, Windows 2016 +> 由此所见,采用VC-LTL编译后的程序能兼容Windows XP以上所有操作系统。 ## 使用方法: ### 1. 将内容解压到工程目录VC-LTL @@ -50,7 +59,7 @@ VC LTL 是一个开源的第三方修改VC库,大家都可以免费,无条 ### 3. 在工程属性(Release配置) C++ - 所有选项: * 【运行库】调整为 【多线程DLL/MD】 -* 【目标平台】调整为【Windows 10 14393】或者【Windows 10 15063】 +* 【目标平台】调整为【Windows 10 10240/14393/15063(推荐)】(从中选择任意SDK版本,但是尽量不要选择14393,因为在不久会删除14393 SDK 支持) > 如果你的程序需要支持XP或者2003,那么建议【C/C++ - 命令行】输入`/Zc:threadSafeInit-`以禁用线程安全静态初始化,这是编译器本身的BUG,否则在全局变量中使用静态变量会导致程序崩溃。 @@ -68,7 +77,7 @@ VC LTL 是一个开源的第三方修改VC库,大家都可以免费,无条 * vc140xp.lib/vc141xp.lib 从msvcrt.lib提取的一些原有lib不支持的函数集合(支持 XP)。 ## Changes: -1.0.0.9 初步版 +1.0.0.9 2017-05-26 14:46 * 改进Windows XP支持 * 优化库结构裁剪ltl库体积 * 解决使用自定义异常导致程序编译不通过问题 diff --git a/_msvcrt.h b/_msvcrt.h index b3f6b9c48..0a5d065de 100644 --- a/_msvcrt.h +++ b/_msvcrt.h @@ -36,7 +36,7 @@ #define _ACRTXPIMP extern #define _ACRTXPINLINE __inline -#pragma message(_ltlfilelen "info: 发现当前编译选项需要支持XP/2003,建议【C/C++ - 命令行】输入\"/Zc:threadSafeInit-\" 以禁用线程安全静态初始化,这是编译器本身的BUG,否则在全局变量中使用静态变量会导致程序崩溃。") +#pragma message(_ltlfilelen "warning: 发现当前编译选项需要支持XP/2003,建议【C/C++ - 命令行】输入\"/Zc:threadSafeInit-\" 以禁用线程安全静态初始化,这是编译器本身的BUG,否则在全局变量中使用静态变量会导致程序崩溃。") #else //_ATL_XP_TARGETING else //默认模式,此模式编译器新特性将使用Vista新API实现,性能更佳 @@ -46,6 +46,23 @@ #endif //_ATL_XP_TARGETING +#ifndef _UCRT_VERISON +#error "vc-ltl 并不支持当前目标平台,请切换目标平台版本至 10240/14393/15063(推荐)。切换目标平台仅仅是切换了Windows SDK/UCRT版本,这并不影响你兼容老版本Windows(包括Windows XP)。" +#elif _UCRT_VERISON == 10240 + +#ifdef _ATL_XP_TARGETING +#pragma message(_ltlfilelen "warning: 由于Windows XP工具集强制使用陈旧的10240 UCRT,推荐手动定义 _ATL_XP_TARGETING 宏并调整最小系统支持为5.01,然后迁徙目标平台到Windows 10 15063,从而使用最新15063 UCRT。此过程并不影响你兼容XP。") +#else +#pragma message(_ltlfilelen "warning: 10240 ucrt 存在的目的仅用于兼容Windows XP工具集正常编译,而你的程序并未采用XP兼容,强烈建议你迁徙目标平台到Windows 10 15063。") +#endif + +#elif _UCRT_VERISON == 14393 +#pragma message(_ltlfilelen "warning: 14393 ucrt 即将在下个Windows 10 SDK发布时删除,请尽快迁徙目标平台到Windows 10 15063。") +#elif _UCRT_VERISON != 15063 +#pragma message(_ltlfilelen "warning: 无法识别此版本是URCT,强烈建议升级到最新VC-LTL然后继续。") +#endif + + #pragma comment(lib,"vc" __ltlversion __ltlversionxp ".lib") #pragma comment(lib,"ucrt_" _CRT_STRINGIZE(_UCRT_VERISON) ".lib") diff --git a/x64/vc140.lib b/x64/vc140.lib index 5bf642fa24d0cab10686ad6a393647313494c8b2..ef52b34fccfbaa362c8b410541510d99bf881ca0 100644 GIT binary patch delta 3067 zcmbUjZBSI#^_=^5aX;8)A1u4!(*;RXKv=#OFd9&sh@>ePv9`^m3+@6T@)dz;qv`A# zs9#{B+=+M6A2p^EGqGtV#&kA6s3T1~YR8!*opee%YE37$Bhz7obo!xb?YZy0-K^-O zGd*wayXT#+d(XM&p7V|#vQO?$J)E0TTVGipsO9ZuZ=~8^<wb%u5f1v~q@26l!z!(c1dLy>q_RM*!e#i}Y$ACHxVg4OHMI}&M_HGV8)XIDPY!~I3;;Tu+W3XV}kgzM58Ov&`=Z%hGKu- z%{&x}F~3?JV%CnOvCn>pX={|qT7Qf_FFwm^YEDm$mh4xmtLpjGXzA$(Hu2R;O=XoP zeY(=|>j#y9U)Rm5sHv){Fj6+W*8#P!e*0U~b(Fgt$8uOMLog$r3~Pf%xZZK zeDjz$Wu_P)&CdJB3L^>;|5Bsz5-*?2-(KeThq}5GBsu_qS&~~YWRbobU5$ZR}E zT7Y#lBrtw_%o}-=u&qQv3V;M@zR~4cUv`gWR~j;!peA?ss?|haMRFa6EQL_Fw`g~g zJyHh>{H#u#*^61`9}}USzrC-;aYr)nJhuEBs)#BZK_!uq|9T}MI zd;lD(S0%m%;>a|5-14pxNX>7OPg$ht7A+UiW6lMO`U;O8$PynMz*=0+*SX!i_fVQB zK8OWsI@xL6uyxy(w#Ol#B;EWY*J^Z$udj*Ij|Do zb6V;;@x-2d%;c>-77@IJ*0ej$t}MjoJ#OA!9KtJ!Ru*8m?z!_wz`T<5&)@gQ-zEhaqz;l>E=bpnaR~MmMq@Kj3b{n9}M{6Q1 z#EMViCyJ?%q-7%T@e8Gtimh+q_hLKV!5O=_HpNyg4u$x4Gi&63?aScbozD^1&Y&mq zOTz_YvTN3pX)-WKq0z79Jk9c!tbvWR@|PehQ5-PAi5h{>dX&+x>N6>+mP$5)XTI@h2#07NCaf#y=0TJ`4ze#)P?E7*}>XB5GWEIxqAPba?L>GWkdosqKP&hHNw_4SjWW==urrG&EeC6n?uLx+50 zHi3_5$vw(U90m1^G=vgbMr)(r6KN?~D@E6e&_vhUfcRqHFutV_sU>xsB}7qB`Yi$X z;qT?Yj}A{8vnB({T~BUKLD~1DMF}QNt86&(rT11MD=5!eZe!N@=x=o_*^taO1!ZfD zZ^4>aKHi9}dW4cTE%WovO((RTfTP5epb6cv>r|pDSWWMETy$TPHzcozqP6I_jQkq} qI7>t8cM4r?Ss+caK=MmX+4AphWpnVW%V9hRWhn5p3!15*Pph=Akif*Y8GCokgYn%u-yEs&F+m=d3ypO==I9$#9V znzC7ek&l@*J}t2Oec6UdtkY*5I=z{J1|hAo-XVlp))x&hun%Tkx%oW-05XiLJirLW20wgOk9mti~u62^}e>*cU6t)A! o&QvlQZ~rL7Xk)`0B&3v|1VXfR ze-5fNHqhjR*YXH3pj$Nwjde_3=Sr(oV4bF|gR-A$X;pPAYPS_>frP4B1?qP9eYSDZ zh)UDc-P3#T-o3kfclYkQ_Z>^x4nAKrS{83^sc&fs`DQ?7*$@uZ8yj6_0Qe?=H}c8e z^&!B2-QzcfvGO#0<~{!ZI5g+X_-E$vd()r=LbLl~(2jhZ?V_p{^uBQt#NkW1T^_aE zpKPir~FJAa}z)Xlo3PrIb%Xhhbz*O+5HgTt}jEklDbS?5_T zM@lxy%90K8qNiPc&C@9tc{=1D-5oOS?r<47GBi9mIIwGXaA4CDP)8Lib*WvvbhoK4 z8u6tTk7=oMA{=c@{p|uSKPT#&o7I~htWEvt02VD34Utfamajf38XKFEr$%eOEt=|E zyNnR~xwh34UoJJdBSVo85B59$iagp>g9vjjEiL0@05=nE>fim z{f=VNvu0)I!|fewp`19K^6bJTXjfwaDqY7EHqfELr-VGthZy5z;0NP#NwhE_Ymxn?^HVFny@?d_7VIJ28fY^%h{L@s~t-zZX3u- zUR$7>vDD@7;f4juzYaY`|F#1J09~{T-~c(5nBS%sjwu@y*mvt>fKuYBPIGCb@Rn8o z+VqsVCy61sVOc>ck;DnqZqu(ro%)98%d?WaO?~hJ{u<}g9eUMY{-IT&Q{DJER#?n{ zb{`!|^*&Xa!Z!p4_*Up zxipRiQZ$SYWQt}^@}+POnRXNSyUze-cSh2_>u+89-Q%1tf@O|MVn>i~wl63Y6#UOS z=pePHN|b4>erfA)#Wi@46ipM`;*4gRGY3%-qJ%YIIlu^GD`~E!nT@qTD2D7XRv6*_?tYC1x zVctO@!4aaM;L?rU1zBeoP@F07VxAobJlAr_-gGlSVMtgHulkAW6Z2} z?!`y*_^r^?@AqPbHc>6d_BmDJJla+UclUi|ch&YC#Hgzi$WAc?+iDK*?}-8B>DdH6 zqUF8|c?!2`UT^y4pnnY(%4Nvc8R8G5HRKx%Ic1$4703Z#z`giq{$VlTiS(@VK(M!O z({O)PI}`a!5Xg@UYh*C#Qn?=SpO`?tE-g;OW!rs!FkH%2#91Ve-=B;Lh1ugXFIu7D zc8<}Uw=<2tDRq$c7<8Vr(O)pEzKzHN8)?i$*6=mgAWnOszk?Z`eBGckMAu&;L0>JG fI}?{XP7nTly5rv1t&3YM{rU4#ox$hKelY(BKclRN delta 1189 zcmbQXj(^@}z6mn*2A1ZgrsfJLzyQiKva~RSFcY{K7#OM;7$iS2FoZsX;0Y@j7@(L@ z;u-@6p0tF4@!TTLLfnO2vN)dm517P#lChHyN+eCrmf&aQ(gzj_(+yOZMW%B-W0cyi z5YK$rn%TlcVLMQ4zZJ8gnFUBzXS?1UrvL5CMy5t^#S+^Sl$hpMG8-G4gT=N34N$jX nHZd~TzD1eQ{t%<-^bc{&Vw?FA7aw9aGc*J#65Z@Cz1$T5Wjij? diff --git a/x64/vc141.lib b/x64/vc141.lib index f5b154c607973a6d79bd5cea3ed22957eee9c217..079c1f85a85d2cae67feb81d1b3cf3b0313c1194 100644 GIT binary patch delta 3191 zcmbVOeN0=|6+h=a>=+x&GZ>o!A%?JIG|ZToFS8LKBuy6DKniG^((OTwVNeK+k1g4% zny6V?(u|K>C09|GX`R|`mFUWrs9yKShBj4eqf~9ODXrFRTHCE^qbaM2Ggz?X#T%^&1bqhe+5uoIfb+ne z+;bA(|6nZg10L4yB&gHj6a5Vi51M0H||BdIE@{$)IpLV+b*$sqG0i(BGGDh3#Gk44!nw+ zWqB65n)D-MiJ#u7VY$6=#2YZzXN~*1{3Du^d7OV>; zQL_k8aFuYmO}g<%CH@mRqM7UM}u(t89OJ(zehAo*-E zZ6S(*nKzKp;FYm=aMU0IreV z?-RO6?=4zO%SL*CA)UXi*Bcxd>Ypq>mh_lGgMZY+j^w-1w`hSDe}Ck`>A~`@3qTRk#3D z=p6e-WTIy>GI3wu(V@}lQP>9Au1fl3lGIM4CztoN;rt5C5+vJF8UHN?YE%au9YwfHhEC1j{3n0}@ymP$<qij{~8DQ|ZtZ1UD@Hm=sUR^y(8?q$*Yl2^7Z zVYl46gn6-_FX3yb`pjgBKyAcAiGwofegWUcPg8D-#D%(YtdN0a+~TkUYCf8sDtPSR zGFE3`NOWFlClsz+!uibH#3XgGxd(8c!?~AS-9x;Oc)v?N^)i-N4uZwgDTiNEj^?d{ z6lj^E@9V?SHd5b1d_Qp)@gd^X_^&wZHR3YGm1T_>aRip9|5%?hW?$3dDwd>Na%|E} z8s?#g($0n)*yZBW38A}hVlXlVPH1%azWa}t;3Vbc4kVlDRDVuhn zX(}FxdW|9)AR(85Vq&INfEn)hQcva92*ClY#lhGioRV>sHD#AlvY(}7`=7|BG3@_N zK6k;D{hz&@b9Uv|95J20go+&=Fzxx&G|R&P^}E+W#C4O2H>CRxh&JA0sqmv5z5*Sb zGqUF>lEi-boflM|5PmHY`y}-|AMI}ggCZK681Tpr4^wN(W)dU2fkZNn?Iisa)xqPa ziSe9LAGk@tQ9G!3nIn5D=(_>VoyHxsMAqU6O)Zza`5V+Nd=x4Yqv)1}#}tS1cqJ#+ zEgy-ZP0qi9)~J6fa&)SE^axoRPF3WXnEbnUoH4V@ZzbFiWq^+`Nk0HBBvsMevW5yZ zyeF7y&5rIsEK9etl7y_H)TOpy%IsjmjFreN?O@wvm@!mL_!z#)7c7&86TP7W=|?Ir zPDMUc*&|biVdbBSu0>B!krHQ?SAWCVe$5=EJK~G8ic8ccmyns7{uoJ_GEIci7R~!y z#iRu#-ob(UdPLv0dHGuHG4@o%CcAI(V}zH$Pr5F5v5VcNBDT^T;p cUdZ>!iUWGGPH+4}=!uHLcbVjPV@>;i0smWh0RR91 delta 528 zcmZ3qhG*Ye?g=t%2A1aLrbd$sxW(!XjVz25z#xH(fq_Aufq|Eafx%k}f?EX`7@(Mu zPmBQrcm7~tJb8;O%+%k+z|=1fBH%bay)>~XB|bSLH90#zGdVFQXYxXh?#WGD)dD&B zi9m_`ytK^p_|oFkl+6l^e9WxzX^Ca|ldZYjCm&!HLGo6vp^+)vTkJr8G4V1mNO?0b z2(&UVi19Hp{ODw4xOI||p{bt<&H#ff3^2&ZzzTGW71QR$ z9O;ac?YS;$qdS#BUmp^}Fw)S((i9#A;!FnSlRLQsCO_c~nLGiEStmR4`cHn&6FPYc zPw-@Yp47=Vx%pYS^bHggrgPn3GT5#(i|MH?vxSMm_CN7VpDmdU%`CQmyT-`e$qe*1 sNQusNhiJwv)r`j54W$_$*fX0L8B7N%)!Do)wDKsksgdDkKRye00Np=@4FCWD diff --git a/x64/vc141xp.lib b/x64/vc141xp.lib index e91b31e9c47c7ef1808510fcaedb121b7a458b53..7054071c90531518f301a49160f732df96deccd6 100644 GIT binary patch delta 3720 zcmb^zZBSds@%BA|kz_yuAwUvF0!)lekc5zsND0Cu#)$(4gKcP=k%%NPHUY{<#;Mbh z{U`RsO(D5)&Q2Pz6XH&2>v$@AXxeeYB!4=dWN`hXWa_pd
AT(^);>$r8Md+$Ag zw06+v_FWS z_5?8rRY&){m`;OPrF2JUIlDLy1+=YG9}V;m43a?4XxC6U&>QON z>kEYTL_+(91CjpjfuT?&Of>eSJhfV#RX+DuX0XHSjAyVKQ~0cfkn15rDoTOW+yr9r z3gnBJKvcCNiQaljBw6Q?KtVC-6A1q}Zw-E_(kDthnY)@a5H)_XW^xNe{!&Q%lg6VY zElEYSs&cZad)d<_7-Nnp!Il`@;uIE}2Y0N&@Eq`9+3p%FI;*}fwv=;3sM6T)2;1GF zR$X09f11}qcbhZm&+_Z(ZPPdDDbu&Hq%arn4Sbh(`j zsq&d=3&akHRW1)3?-O%k&(j-6z|H(0fid<{=f^(Ly>(WZm-KH zC0S4tem0#%YfpE)Swl!MeambXECO4wK#|&j=~pNa;-ddD7p5F3C!~?-Pk@2iEtydf zGj6ULn*^}x9Ki~QBh=lq!c0T*GRpl{kp=Agb$vziaboYjbOP-EfR3Y)t zYQnnC2{!%juyYF)e&dygQ(5#1BBK;Rc4qV@_(`~L;#jd`F z1gYhLxWeib@_w`WPYy+z&|~caNJ|M4Uhj(jQp1rzb^~{kUIjNaq3# zi1}oVzKk9`ZuFFrbbYxVSrRD4BiuVY*fkQ`qf`-IRwUaW;3O_owb9msD&}|vnxKYu z9XF*|NSgj69gOAYWFS?HwuXj#zZ(gRkaXSLOJ!no(o+pcnWfbF`$QDGs4?!ocBHjwm2#p zQ$Ir!>jXCb777Q~Kgg!{iy7?FMM$H6D^aVLW5^0Cz{JMw&_v%^KS&qeC}sB zh{4m1a4v#LN61D+C>s^N@?QCDX^|cN1&qvSe+df!Rw+O%^8$oZYOEB1ihm#?AjY`K+%T~cObSQwjwSqzQ=cK1++-=va$j^DnK|t@r-^$ zTG@&eFJW=WLc=l~RJNU8X=XidZqciI-ant8Wy|Mm%~F zq+q)u!1PqeW4bM3TC`aaNRY(% delta 1138 zcmZ4YjQ_-Qz6mmH2A1aLW@eM^c*W}t%}o@*Ac2d4fuWj#K{}0rA+ipFCzmiVKry3C z6$1vI5yQZE!;TVMkD{4rl@|kjaXq~)M6<7+jy`72>0v;_@zaH@nT4hcmN83C?%|Q1 z%p)8&`MzkiKu&&QN_=vDURq{)d}(oN%5;TKjEb9A@oi<=yq5C`?kw!_@o9-= z`9+iKlf@@*5Y?B`ha@C8X=q|;3QuWb^+uLv@TA58OlxV<3=DOV3=Acc85pW$7#U(_ zFf!QPU}W%G#l+B)!wgD`3~VTnodEEI?e5?P6P)-ght?nHp^ea_?6&8ylO0By_fC{b1Z|&tzh> f-B68@>k_l6p~dD8$@Yhs%?ymdIyaw?QE>+V`wHyI diff --git a/x86/vc140.lib b/x86/vc140.lib index 8f15868c5912f5d30a341e074e5adc957502e1ed..766058f6c3b7d3595887100230cc0f2079327a7e 100644 GIT binary patch delta 5099 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 W-+b98&z#xR$QZ=a-8`9}*A@U!h@1uh diff --git a/x86/vc140xp.lib b/x86/vc140xp.lib index 3f5f8fb3ff56fb4b6ddeb2224bf755520f75d091..909351f2e74ec35a63df4f180385981209c6f4fe 100644 GIT binary patch delta 5631 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 U)7|4?20La>jcPUUHUF9Y7uPa!3jhEB delta 1286 zcmdnDT=2p+feAA829{<<7DfsvzyQiKGBvY+FcY{K7#P|Z7{n$~8P`+WKoZTXr@D_w zb3i>wL3&1qfq?*KO8v(`0`@>v+#1KggpALeVqikU%$ide;CNXP12YKU6Pm6s$f7a5 zPLM@vb3E%$mdVq3cT7ISynJ#qv;AZi=Gw`dm;xrV_DD>g#UwG^D40dK-ob=HA0^c( zC>WYpn&M55#>Qr_^vD5Bkdwq17?toPTnsrzI_rW^Y>uZ=z a4J}|I5}QRs3(T3#42-}coA-;W+5!MTrtv)h diff --git a/x86/vc141.lib b/x86/vc141.lib index 40254fe7e202b20398127c04a791c3e83c466563..ca190116ae4c97f46a1c3b1e566b8dbc9dd98cb2 100644 GIT binary patch delta 4886 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 RhIz;{n;IEHc-8zX-2gVLm6rej diff --git a/x86/vc141xp.lib b/x86/vc141xp.lib index 7d809d71457f313efad1d0e247be1cc905c1e9d8..47cd2d6b7ec6be41cce3686b85ac8f6c890f6401 100644 GIT binary patch delta 5895 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 cW@($gmD$wLeDjjDSb1hM1B1Hq)$