2015/03/25
Visual Studio 2012에서 Feature Pack의 변화
아래 내용은 변경사항 중 MFC와 ATL 라이브러리 관련 변경 사항이다.
MFC및 ATL 라이브러리 변경사항 보기
Removed Fusion support (afxcomctl32.h); therefore, all methods that are defined in afxcomctl32.h have been removed. Header files afxcomctl32.h and afxcomctl32.inl have been deleted.
Changed the name of CDockablePane::RemoveFromDefaultPaneDividier to CDockablePane::RemoveFromDefaultPaneDivider.
Changed the signature of CFileDialog::SetDefExt to use LPCTSTR; therefore, Unicode builds are affected.
Removed obsolete ATL tracing categories.
Changed the signature of CBasePane::MoveWindow to take a const CRect.
Changed the signature of CMFCEditBrowseCtrl::EnableBrowseButton.
Removed m_fntTabs and m_fntTabsBold from CMFCBaseTabCtrl.
Added a parameter to the CMFCRibbonStatusBarPane constructors. (It is a default parameter, and so it is not source-breaking.)
Added a parameter to the CMFCRibbonCommandsListBox constructor. (It is a default parameter, and so it is not source-breaking.)
Removed the AFXTrackMouse API (and related timer proc). Use the Win32 TrackMouseEvent API instead.
Added a parameter to the CFolderPickerDialog constructor. (It is a default parameter, and so it is not source-breaking.)
CFileStatus structure size changed: The m_attribute member changed from BYTE to DWORD (to match the value that's returned from GetFileAttributes).
CRichEditCtrl and CRichEditView use MSFTEDIT_CLASS (RichEdit 4.1 control) instead of RICHEDIT_CLASS (RichEdit 3.0 control) in Unicode builds.
Removed AFX_GLOBAL_DATA::IsWindowsThemingDrawParentBackground because it is always TRUE on Windows Vista, Windows 7, and Windows 8.
Removed AFX_GLOBAL_DATA::IsWindowsLayerSupportAvailable because it is always TRUE on Windows Vista, Windows 7, and Windows 8.
Removed AFX_GLOBAL_DATA::DwmExtendFrameIntoClientArea. Call Windows API directly on Windows Vista, Windows 7, and Windows 8.
Removed AFX_GLOBAL_DATA::DwmDefWindowProc. Call Windows API directly on Windows Vista, Windows 7, and Windows 8.
Renamed AFX_GLOBAL_DATA::DwmIsCompositionEnabled to IsDwmCompositionEnabled to eliminate name collision.
Changed identifiers for a number of MFC internal timers and moved the definitions to afxres.h (AFX_TIMER_ID_*).
Changed the signature of OnExitSizeMove method to agree with the ON_WM_EXITSIZEMOVE macro:
CFrameWndEx
CMDIFrameWndEx
CPaneFrameWnd
Changed the name and signature of OnDWMCompositionChanged to agree with the ON_WM_DWMCOMPOSITIONCHANGED macro:
CFrameWndEx
CMDIFrameWndEx
CPaneFrameWnd
Changed the signature of OnMouseLeave method to agree with the ON_WM_MOUSELEAVE macro:
CMFCCaptionBar
CMFCColorBar
CMFCHeaderCtrl
CMFCProperySheetListBox
CMFCRibbonBar
CMFCRibbonPanelMenuBar
CMFCRibbonRichEditCtrl
CMFCSpinButtonCtrl
CMFCToolBar ReplaceThisText
CMFCToolBarComboBoxEdit
CMFCToolBarEditCtrl
CMFCAutoHideBar
Changed the signature of OnPowerBroadcast to agree with the ON_WM_POWERBROADCAST macro:
CFrameWndEx
CMDIFrameWndEx
Changed the signature of OnStyleChanged to agree with the ON_WM_STYLECHANGED macro:
CMFCListCtrl
CMFCStatusBar
Renamed the internal method FontFamalyProcFonts to FontFamilyProcFonts.
Removed numerous global static CString objects to eliminate memory leaks in some situations (replaced with #defines), and the following class member variables:
CKeyBoardManager::m_strDelimiter
CMFCPropertyGridProperty::m_strFormatChar
CMFCPropertyGridProperty::m_strFormatShort
CMFCPropertyGridProperty::m_strFormatLong
CMFCPropertyGridProperty::m_strFormatUShort
CMFCPropertyGridProperty::m_strFormatULong
CMFCPropertyGridProperty::m_strFormatFloat
CMFCPropertyGridProperty::m_strFormatDouble
CMFCToolBarImages::m_strPngResType
CMFCPropertyGridProperty::m_strFormat
Changed the signature of CKeyboardManager::ShowAllAccelerators and removed the accelerator delimiter parameter.
Added CPropertyPage::GetParentSheet, and in the CPropertyPage class, call it instead of GetParent to get the correct parent sheet window, which may be the parent or a grandparent window to CPropertyPage. You might have to change your code to call GetParentSheet instead of GetParent.
Fixed unbalanced #pragma warning(push) in ATLBASE.H, which caused warnings to be disabled incorrectly. Those warnings are now enabled correctly after ATLBASE.H has been parsed.
Moved D2D-related methods from AFX_GLOBAL_DATA to _AFX_D2D_STATE:
GetDirectD2dFactory
GetWriteFactory
GetWICFactory
InitD2D
ReleaseD2DRefs
IsD2DInitialized
D2D1MakeRotateMatrix
Instead of calling, for example, afxGlobalData.IsD2DInitialized, call AfxGetD2DState->IsD2DInitialized.
Removed obsolete ATL*.CPP files from the \atlmfc\include\ folder.
Moved afxGlobalData initialization to on-demand instead of at CRT initialization time, to satisfy DLLMain requirements.
Added the RemoveButtonByIndex method to the CMFCOutlookBarPane class.
Corrected CMFCCmdUsageCount::IsFreqeuntlyUsedCmd to IsFrequentlyUsedCmd.
Corrected several instances of RestoreOriginalstate to RestoreOriginalState (CMFCToolBar, CMFCMenuBar, CMFCOutlookBarPane).
Removed unused methods from CDockablePane: SetCaptionStyle, IsDrawCaption, IsHideDisabledButtons, GetRecentSiblingPaneInfo, andCanAdjustLayout.
Removed CDockablePane static member variables m_bCaptionText and m_bHideDisabledButtons.
Added an override DeleteString method to CMFCFontComboBox.
Removed unused methods from CPane: GetMinLength and IsLastPaneOnLastRow.
Renamed CPane::GetDockSiteRow(CDockingPanesRow *) to CPane::SetDockSiteRow.
자세한 정보를 아래 링크를 확인 해보면 된다.
https://msdn.microsoft.com/en-us/library/vstudio/bb531344(v=vs.110)
Original Post : http://neodreamer-dev.tistory.com/736
No comments :
Post a Comment