wtl,9到10版的改进-创新互联

ATL/WTL应用向导

ATL/WTL应用向导产生WTL应用的起始程序.可选择为不同的应用类型和功能创建代码.
可选择下列选项:
1,应用类型(SDI,多线程SDI,MDI,TabView,资管,对话框)
2,支持ActiveX控件
3,COM服务器
4,用.CPP文件实现类
5,常见控件清单
6,Unicode字符集
7,工具栏,钢筋,命令栏,状态栏
8,视图窗口及其类型(一般,对话框形式,或清单框,编辑,列视,树视,RichEdit,HTML页面,滚动窗口)
9,对基于对话框应用或基于窗体的视图窗口,支持对话框中托管ActiveX控件
ATL/WTL应用向导支持VC++2005,2008,2010,2012,2013,2015,20172019.

成都创新互联主要为客户提供服务项目涵盖了网页视觉设计、VI标志设计、成都营销网站建设、网站程序开发、HTML5响应式网站建设公司手机网站制作设计、微商城、网站托管及成都网站维护、WEB系统开发、域名注册、国内外服务器租用、视频、平面设计、SEO优化排名。设计、前端、后端三个建站步骤的完善服务体系。一人跟踪测试的建站服务标准。已经为建筑动画行业客户提供了网站设计服务。如何在MFC项目中使用WTL

如果要在MFC项目中使用WTL,则需要在包含atlapp.h之前放以下两行:

namespace ATL {using ::CString; };
#define _WTL_NO_AUTOMATIC_NAMESPACE

第一行告诉WTL使用全局名空间中的CString,因为CStringMFC中是这样定义的.第二行防止WTLMFC之间的名冲突.请显式使用WTL命名空间前缀.

WTL历史记录

WTL102020发布.

WTL109.1之间的变更 新的和改进的:

1,与VS2017VS2019完全兼容
2,完全符合C++标准,并支持用/permissive-flag编译
3,完整支持严格常限定一致性(/Zc:strictStrings)
4,对存储在注册表中的属性,CRegPropertyCRegPropertyImpl<>新类
5,新类:CSimpleFileDialog修复了不使用OFN_ENABLEHOOK的常见对话框
6,添加了对MFC动态对话框布局资源格式支持

应用向导:

1,添加了对VS2017VS2019的支持
2,删除了清单(始终有)和Unicode(始终打开)的选项
3,添加了WinXP支持选项
4,添加了_NO_AUTOMATIC_NAMESPACE的支持

修复和增强功能:

一般:
1,添加了AtlGetStringPtr()函数,取只读资源串指针
2,更改CMessageLoop::IsIdleMessage()的,因此可在继承类中重写它
3,为模板化类添加了DECLARE_FRAME_WND_CLASS2(),DECLARE_FRAME_WND_CLASS_EX2()DECLARE_FRAME_WND_SUPERCLASS2(),并对CFrameWindowImplBase使用了DECLARE_FRAME_WND_CLASS2().
4,为避免WS_CLIPCHILDRENWS_CLIPSIBLINGS出现绘画问题,对对话框控件添加了新的窗口特征:CMemDlgTemplateT.
5,CWindowEx:对仅对话框消息添加方法
6,修复#315错误.如果不使用versionhelpers.h,WTL::RunTimeHelper::IsWin7窗口10上工作错误
7,修复#300错误,在CZoomScrollWindowImpl中设置SetZoomMode(ZOOMMODE_IN)时出现的错误
8,修复了错误#298,InitDialogBaseUnits按值取LOGFONT
9,修复CResource::LoadEx(),::FindResourceEx()的参数顺序错误
10,修复C4555警告:用BEGIN_MSG_MAP_EXBEGIN_DDX_MAP时,表达式无效
11,修复#266错误,高dpi环境加载图标
12,修复了#319错误,atlprint.hDEVNAMES结构中的错误偏移

示例:

针对WTL10了更新,重命名了项目文件以指示VS版本,代码和文件清理

控件:

1,添加了CListViewCtrl::选择所有项目(SelectAllItems)()
2,改进了CListViewCtrl::SelectItem()来调用SetSelectionMark()并删除所选
3,添加了CListViewCtrl::Scroll()的另一个变量
4,修复了#321错误,TreeViewGetNextSelected()方法缺少HTREEITEM参数
5,为窗口10.0.17763中添加的新编辑消息添加了CEdit方法
6,CRichEditCtrl:添加了缺少的GetTypographyOptions()SetTypographyOptions()
7,添加了CMultiPaneStatusBarCtrlImpl::GetPaneText()CString变量
8,修复了#268错误,CImageListManaged,在使用attachoperator=时抛ATL断定

分割器:

1,C分割器实现:增加了m_nPropMax来处理超高分辨率
2,C分割器窗口实现:添加了新的"平"分隔栏绘画风格
3,对C分割器窗口T,用DECLARE_WND_CLASS_EX2()

选项卡视图(TabView):

1,拖动选项卡时,添加了自动滚动来重定位
2,扩展拖动区域CTabViewImpl的整个工作区
3,对选项卡添加了悬停关闭按钮
4,SetActivePage(),仅在主窗口活动状态时设置焦点
5,OnTabContextMenu()来传递正确选项卡项给OnContextMenu().
6,CTabViewImpl:用带TRUE/FALSE显示窗口(ShowWindow)(),而不是SW_SHOW/SW_HIDE.

Ribbon

1,修复#317错误,SpinnerCtrlImpl无法更新串属性
2,不要使用模板函数函数指针

破解的处理器

1,添加了MSG_WM_NCMOUSEHOVER()MSG_WM_NCMOUSELEAVE()
2,添加了MSG_WM_GESTURE,MSG_WM_GESTURENOTIFY,MSG_WM_DPICHANGED,MSG_WM_APPCOMMAND消息.
3,修复了#322错误,atlcrack.hMSG_WM_MDIACTIVATE注释中错误签名
4,修复了#302错误,MSG_WM_WTSSESSION_CHANGE,应将lParam作为会话ID
5,修复了MSG_WM_XBUTTONDOWNMSDN不一致的#284错误.
6,修复错误#286,MSG_WM_KEYDOWN破解wParamTCHAR,应为虚键.

Clang相关修复:

1,使用C++风格而不是C风格结构初化
2,删除多余的分号
3,在switch语句中为隐式直降加注释

应用向导:

1,已从视图文件中删除项目名和类名
2,修复了模式对话框项目x64中不同类型的警告
3,改进了Setup.js来处理VS2017VS2019的多个安装
4,Setup.js修复了VS2019社区版安装程序中,未创建vcprojects目录的问题
5,删除了VS2017及更高版本中已弃用的MinimalRebuild编译器选项

删除的旧功能:

1,已删除对旧版VS和旧版SDK的支持
2,删除了对WinCE(和AppWizardCE)的支持
3,删除了对_ATL_MIN_CRTMinCrtHelper的使用支持
4,删除了CPoint/CSize/CRect/CStringWTL实现(使用ATL)
5,删除了_WTYPES_NS_CSTRING_NS的使用
6,始终定义_WTL_NEW_PAGE_NOTIFY_HANDLERS(添加了_WTL_FORCE_OLD_PAGE_NOTIFY_HANDLERS来关闭它)
7,删除了对_ATL_NO_OLD_NAMES,_ATL_USE_NEW_PRINTER_INFO,_ATL_NO_COM的使用
8,删除了_ATL_USE_CSTRING_FLOAT_ATL_USE_DDX_FLOAT(始终使用浮点型)
9,删除了_ATL_NO_MSIMG的使用
10,删除了对RichEdit1.0的支持
11,atlfind.h:删除了阴影缓冲区,并添加了警告/断定.
12,删除了_TrackMouseEvent()的使用,并直接使用TrackMouseEvent().
13,删除了CregKeyEx的使用(不再需要)
14,删除了对_SECURE_ATL的支持和SecureHelper函数的使用(现在始终安全的)
15,始终使用主题,将uxtheme.huxtheme.lib移至atlapp.h.
16,删除了AtlIsOldWindows().

应用向导:

1,已删除对旧版VSVC++学习版的支持
2,删除了过时内容及其注释
重命名文件为WTL10AppWiz.*.

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


分享题目:wtl,9到10版的改进-创新互联
URL分享:http://scyanting.com/article/dggcji.html