2012-05-23 16 views
0

我是很新的WTL 這裏是的onCreate代碼我的主對話框DwmExtendFrameIntoClientArea這麼想的工作

int Cwin32_mfcDlg::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{ 
    if (CDialogEx::OnCreate(lpCreateStruct) == -1) 
     return -1; 

    // TODO: Add your specialized creation code here 
    MARGINS mar = {0}; 
    mar.cyBottomHeight = 100; 
    DwmExtendFrameIntoClientArea(m_hWnd,&mar); 
    return 0; 
} 

,但是當我嘗試編譯我的項目,我得到這個錯誤

error LNK2019: unresolved external symbol [email protected] referenced in function "public: int __thiscall Cwin32_mfcDlg::OnCreate(struct tagCREATESTRUCTA *)" ([email protected][email protected]@[email protected]@@Z) 

這裏輸出:

1>------ Build started: Project: win32_mfc, Configuration: Debug Win32 ------ 
1>Build started 5/24/2012 1:08:43 AM. 
1>InitializeBuildStatus: 
1> Touching "Debug\win32_mfc.unsuccessfulbuild". 
1>ClCompile: 
1> All outputs are up-to-date. 
1> win32_mfcDlg.cpp 
1>ResourceCompile: 
1> All outputs are up-to-date. 
1>ManifestResourceCompile: 
1> All outputs are up-to-date. 
1>win32_mfcDlg.obj : error LNK2019: unresolved external symbol [email protected] referenced in function "public: int __thiscall Cwin32_mfcDlg::OnCreate(struct tagCREATESTRUCTA *)" ([email protected][email protected]@[email protected]@@Z) 
1>D:\projects\C++\Projects\Team_projects\Bill\net\ttt\win32_mfc\Debug\win32_mfc.exe : fatal error LNK1120: 1 unresolved externals 
1> 
1>Build FAILED. 
1> 
1>Time Elapsed 00:00:00.48 
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== 

這是我的StdAfx.h代碼:

// stdafx.h : include file for standard system include files, 
// or project specific include files that are used frequently, 
// but are changed infrequently 

#pragma once 

#ifndef _SECURE_ATL 
#define _SECURE_ATL 1 
#endif 

#ifndef VC_EXTRALEAN 
#define VC_EXTRALEAN   // Exclude rarely-used stuff from Windows headers 
#endif 

#include "targetver.h" 

#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS  // some CString constructors will be explicit 

// turns off MFC's hiding of some common and often safely ignored warning messages 
#define _AFX_ALL_WARNINGS 

#include <afxwin.h>   // MFC core and standard components 
#include <afxext.h>   // MFC extensions 


#include <afxdisp.h>  // MFC Automation classes 



#ifndef _AFX_NO_OLE_SUPPORT 
#include <afxdtctl.h>   // MFC support for Internet Explorer 4 Common Controls 
#endif 
#ifndef _AFX_NO_AFXCMN_SUPPORT 
#include <afxcmn.h>    // MFC support for Windows Common Controls 
#endif // _AFX_NO_AFXCMN_SUPPORT 

#include <afxcontrolbars.h>  // MFC support for ribbons and control bars 


#include <dwmapi.h>  // DWM APIs 



//#ifdef _UNICODE 
#if defined _M_IX86 
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"") 
#elif defined _M_IA64 
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"") 
#elif defined _M_X64 
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"") 
#else 
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"") 
#endif 
//#endif 

這個項目是MFC和Visual Studio 2010和Windows 7 64位

+0

什麼是targetver.h?需要定義Vista或更高版本。爲0x0600。不,我在說廢話。鏈接器錯誤,根據答案。 –

回答

6

DwmExtendFrameIntoClientArea()你需要Dwmapi.lib鏈接。

+1

您需要將它添加到您鏈接的'.lib'列表中。不幸的是,我無法駕馭VS2010 IDE,因爲我不使用IDE,對不起。 – hmjd

+2

這可能有所幫助:http://www.steptools.com/support/stdev_docs/help/settings_vc10.html – hmjd

相關問題