锘??xml version="1.0" encoding="utf-8" standalone="yes"?> 鎴栬呯洿鎺ヤ嬌鐢ㄤ笅杞借繛鎺ユ潵涓嬭澆瀹夎紼嬪簭錛屼笅杞借繛鎺ユ槸錛?/p> http://www.cygwin.com/setup.exe 涓嬭澆瀹屾垚鍚庯紝榪愯setup.exe紼嬪簭錛屽嚭鐜板畨瑁呯敾闈€傜洿鎺ョ偣“涓嬩竴姝?#8221;錛屽嚭鐜板畨瑁呮ā寮忕殑瀵硅瘽妗嗭紝濡備笅鍥炬墍紺猴細(xì) 鎴戜滑鐪嬪埌鏈変笁縐嶅畨瑁呮ā寮忥細(xì) 浠庝笂榪頒笁縐嶆ā寮忎腑閫夋嫨閫傚悎浣犵殑瀹夎妯″紡錛岃繖閲屾垜浠夋嫨絎竴縐嶅畨瑁呮ā寮忥紝鐩存帴浠庣綉涓婂畨瑁咃紝褰撶劧鍦ㄤ笅杞界殑鍚屾椂錛孋ygwin緇勪歡涔熶繚瀛樺埌浜嗘湰鍦幫紝浠ヤ究浠ュ悗鑳藉鍐嶆瀹夎銆傞変腑鍚庯紝鐐瑰嚮“涓嬩竴姝?#8221;錛?/p> 榪欎竴姝ラ夋嫨Cygwin鐨勫畨瑁呯洰褰曪紝浠ュ強(qiáng)涓浜涘弬鏁扮殑璁劇疆銆傞粯璁ょ殑瀹夎浣嶇疆鏄疌:\cygwin\錛屼綘涔熷彲浠ラ夋嫨鑷繁鐨勫畨瑁呯洰褰曪紝鐒跺悗閫夋嫨“涓嬩竴姝?#8221;錛?/p> 榪欎竴姝ユ垜浠彲浠ラ夋嫨瀹夎榪囩▼涓粠緗戜笂涓嬭澆鐨凜ygwin緇勪歡鍖呯殑淇濆瓨浣嶇疆錛岄夋嫨瀹屼互鍚庯紝鐐瑰嚮“涓嬩竴姝?#8221;錛?/p> 榪欎竴姝ラ夋嫨榪炴帴鐨勬柟寮忥紝閫夋嫨浣犵殑榪炴帴鏂瑰紡錛岀劧鍚庣偣鍑諱笅涓姝ワ紝浼?xì)鍑虹幇閫夋嫨涓嬭澆绔欑偣鐨勫璇濇錛屽涓嬪浘鎵紺猴紝 鍦ㄨ繖涓姝ワ紝闇瑕佹敞鎰忥紝涓轟簡鑾峰緱鏈蹇殑涓嬭澆閫熷害錛屾垜浠鍏堝湪鍒楄〃涓鎵綜ygwin涓浗闀滃儚鐨勫湴鍧錛歨ttp://www.cygwin.cn錛屽鏋滄壘鍒板氨閫変腑榪欎釜鍦板潃錛涘鏋滄壘涓嶅埌榪欎釜鍦板潃錛屽氨鍦ㄤ笅闈㈡墜鍔ㄨ緭鍏ヤ腑鍥介暅鍍忕殑鍦板潃錛歨ttp://www.cygwin.cn/pub/錛屽啀鐐瑰嚮“Add”錛岀劧鍚庡啀鍦ㄥ垪琛ㄤ腑閫変腑銆傞夋嫨瀹屾垚鍚庯紝鐐瑰嚮“涓嬩竴姝?#8221;錛?/p> 榪欎竴姝ワ紝鎴戜滑閫夋嫨闇瑕佷笅杞藉畨瑁呯殑緇勪歡鍖咃紝涓轟簡浣挎垜浠畨瑁呯殑Cygwin鑳藉緙栬瘧紼嬪簭錛屾垜浠渶瑕佸畨瑁単cc緙栬瘧鍣紝榛樿鎯呭喌涓嬶紝gcc騫朵笉浼?xì)琚畨瑁呭Q屾垜浠渶瑕侀変腑瀹冩潵瀹夎銆備負(fù)浜嗗畨瑁単cc錛屾垜浠敤榧犳爣鐐瑰紑緇勪歡鍒楄〃涓殑“Devel”鍒嗘敮錛屽湪璇ュ垎鏀笅錛屾湁寰堝緇勪歡錛屾垜浠繀欏葷殑鏄細(xì) binutils 榧犳爣鐐瑰嚮緇勪歡鍓嶉潰鐨勫驚鐜寜閽紝浼?xì)鍑虹幇缁勫缓鐨勭増鏈棩鏈熷Q屾垜浠夋嫨鏈鏂扮殑鐗堟湰瀹夎錛屼笅鍥炬槸閫変腑鍚庣殑鍥涚被緇勪歡鐨勬埅鍥撅細(xì) 閫夊畬浠ュ悗錛屾垜浠夋嫨涓嬩竴姝ワ紝榪涘叆瀹夎榪囩▼錛屽涓嬪浘鎵紺猴紝 瀹夎鐨勬椂闂翠緷鎹綘閫夋嫨鐨勭粍浠朵互鍙?qiáng)缃懢l滄儏鍐佃屽畾銆傚畨瑁呭畬鎴愬悗錛屽畨瑁呯▼搴忎細(xì)鎻愮ず鏄惁鍦ㄦ闈笂鍒涘緩Cygwin鍥炬爣絳夛紝鐐瑰嚮瀹屾垚閫鍑哄畨瑁呯▼搴忋?/p>
鎴戜滑鍙互鍒癈ygwin鐨勫畼鏂圭綉绔欎笅杞紺ygwin鐨勫畨瑁呯▼搴忥紝鍦板潃鏄細(xì)
gcc
gcc-mingw
gdb
binutils緇勪歡
gcc緇勪歡
gcc-mingw緇勪歡
gdb緇勪歡
visual studio->鍙抽敭宸ョ▼->properties->Build Events->Post-Build Event->Command Line涓?br />
榪欎釜鍛戒護(hù)寮忓姛鑳芥槸灝嗙敓鎴愮洰褰曚笅鐨別xe鏂囦歡鎷瘋礉鍒板伐紼嬬洰褰曚笂涓綰х洰褰曚笅鐨凴esources鏂囦歡澶逛笅
娉ㄦ剰鐐癸細(xì)
1.$(OutDir)絳夊畯璺緞涓凡緇忛檮甯︿簡'\'
2.鐢熸垚鍚庝簨浠秞copy鍏跺疄灝辨槸榪愯涓涓帶鍒跺彴鍛戒護(hù)錛屾墍浠?strong>鍛戒護(hù)涓嶆敮鎸?#8216;/'
鍍忎箣鍓嶅啓鐨勪竴涓敊璇懡浠?br />
3.“/Y"鏄弬鏁幫紝琛ㄧず鏈夌浉鍚屾枃浠跺瓨鍦ㄥ垯鏇挎崲
褰撶劧涔熷彲浠ユ嫹璐濇暣涓枃浠跺す
鍏蜂綋鍙傛暟灝辮鍙傝冨埌CMD鎺у埗鍙頒笅鏌ョ湅xcopy鐨勫叿浣撳姛鑳戒簡...
璺濈涓婃鐨勬洿鏂板彧鏈?涓湀鐨勬椂闂達(dá)紝Visual Assist 灝忕粍灝卞張緇欐垜浠甫鏉ヤ簡Build緙栧彿涓?1906 鐨勬柊鐗堟湰錛岃屼笖榪欐鐨勫悓鏍蜂篃鏄?span style="text-align: left; line-height: 19px; font-family: 'Segoe UI', arial, verdana, sans-serif; color: #222222; font-size: 14px">Release candidate鐨勭増鏈紝涔熷氨鏄墍璋撶殑RC鐗堬紝騫朵笉鏄寮忓彂鍨嬬殑鐗堟湰錛屼篃灝辨槸璇存湰鐗堟湰鍐呰繕鏄湁涓浜涙湭瀹屽杽涔嬪錛屼絾鏄凡緇忓熀鏈彲浠ョǔ瀹氳繍琛屼簡錛岃屼笖浼樺寲浜嗕笉灝戞ц兘錛屽儚鎴戜竴鏍峰枩嬈㈣拷鏂扮殑鎴栬呮槸鍏ㄦ柊瀹夎鐨勬湅鍙嬪綋鐒惰繕鏄閫夋嫨榪欎釜鐗堟湰鐨勩?/span>
榪欐鏂板鍔犵殑涓浜涙瘮杈冪粰鍔涚殑鍔熻兘濡備笅(鍥犱負(fù)浠庝簨棰嗗煙鍏崇郴錛屾垜鍙寫閫変竴浜涗笌C++璇█鐩稿叧鐨?錛岀孩鑹茬殑鏄煎緱鍏蟲敞鐨勶細(xì)
瀵逛簬鐮磋В琛ヤ竵榪樻槸鑰佽鐭╋紝璇峰埌鎴戠殑涓嬭澆絀洪棿涓嬭澆錛岃繖嬈$殑鍖呴噷闈㈠寘鎷簡鍘熺増1906鐨勫畨瑁呯▼搴忥紝鍜岀牬瑙hˉ涓侊紝榪欐鐨勭牬瑙hˉ涓佹槸紼嬪簭寮忕殑錛屾嫹璐濆埌瀹夎鐩綍涓繍琛屼竴涓嬪嵆鍙?/span>
http://piggyxp.download.csdn.net/
鍙﹀鎻愰啋涓涓嬶紝濡傛灉涓嬭澆榪囨垜 1903 鐗堟湰鐨勬湅鍙嬶紝灝變笉鐢ㄥ彟澶栦笅杞借繖涓牬瑙hˉ涓佷簡錛屽洜涓鴻繖涓牬瑙hˉ涓佸拰1903鐗堟湰鐨勬槸閫氱敤鐨勶紝鑰屼笖鎹垜浼拌鐭湡鍐呰繖涓ˉ涓佸簲璇ラ兘鍙互閫傜敤浜庢湭鏉ョ殑鍑犱釜鐗堟湰錛岃澶у濡ュ杽淇濆瓨銆傚茍涓旀瘡涓涓牬瑙hˉ涓侊紝鎴戝湪浼犱笂鏉ヤ箣鍓嶏紝閮芥槸浜叉祴榪囨病鏈夐棶棰樻墠浼犱笂鏉ョ殑錛岃澶у鏀懼績浣跨敤錛岃嚦浜庢病鏈夌牬瑙f垚鍔熺殑鏈嬪弸錛屾垜鐩鎬俊涓瀹氭槸浣犱滑鐨勬搷浣滃摢閲屽嚭浜嗛棶棰橈紝鎴栬呭氨鎶婃棫鐗堟湰鐨勫垹闄ゆ帀閲嶆柊瀹夎涓涓嬪啀璇曡瘯(姝e父鎯呭喌涓嬫槸涓嶉渶瑕佸嵏杞芥棫鐗堟湰鐨勶紝鐩存帴瀹夎鏂扮増鏈殑灝卞ソ浜?銆?/p>
鏈鍚庯紝
浣跨敤2008鐨勬湅鍙嬫垜灝變笉澶氳浜嗭紝鐩存帴鎷瘋礉鍒頒綘閫夋嫨鐨勯偅涓畨瑁呯洰褰曞幓錛屼緥濡?C:\Program Files\Visual Assist\ 瑕嗙洊鎺夊悓鍚嶆枃浠跺嵆鍙?/p>
浣跨敤2010鐨勬湅鍙嬭鐗瑰埆娉ㄦ剰錛屽洜涓?010鐨刅isual Assist X鏄嬌鐢‥xtension鐨勬柟寮忓畨瑁呯殑錛屾墍浠ヤ綘寰楀埌榪欎釜璺緞鍘葷牬瑙o細(xì)
Windows7
C:/Users/鐢ㄦ埛鍚?AppData/Local/Microsoft/VisualStudio/10.0/Extensions/Whole Tomato Software/Visual Assist X/10.7.1906.0
XP:
C:/Documents and Settings/鐢ㄦ埛鍚?Local Settings/Application Data/Microsoft/VisualStudio /10.0/Extensions/Whole Tomato Software/Visual Assist X/10.7.1906.0
緗戝弸縐版湪鏈?span style="text-align: left; widows: 2; text-transform: none; background-color: #ffffff; text-indent: 0px; display: inline !important; font: 12px/20px Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; float: none; letter-spacing: normal; color: #333333; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">VS2011榪欒揣錛屽彨VS11鎴栬呭彨VS2012
VS11鎴栬匳S2012鐨勭牬瑙f柟娉曪細(xì)
鐮磋В璺緞錛欳:\Users\鐢ㄦ埛鍚峔AppData\Local\Microsoft\VisualStudio\11.0\Extensions\ 鐨勬彃浠剁洰褰曞悕瀛楁槸闅忔満鐨勶紝闇瑕佹墜鍔ㄥ皢鐩綍涓?a href="/Files/wc250en007/VA_X.zip">VA_X.dll鏇挎崲銆?br /> 鏈漢鍦╓IN7 vs2012嫻嬭瘯鎴愬姛浠ュ強(qiáng)嫻嬭瘯OK
Have Fun錛孍njoy!

涓嬮潰涓昏浠嬬粛涓涓嬪湪VC++6.0鐜涓嬶紝鍩轟簬MFC鐨勬枃妗?/span>/瑙嗗浘妗嗘灦搴旂敤紼嬪簭鐨勫叏灞忔樉紺虹殑瀹炵幇鏂規(guī)硶銆傝繖鏄竴縐嶅亣鍏ㄥ睆鏄劇ず銆傞氳繃鑿滃崟鎺у埗鍏ㄥ睆鏄劇ず錛屽湪鍏ㄥ睆妯″紡涓嬫寜ESC閿鍑哄叏灞忔樉紺恒?/span>
WINDOWPLACEMENT m_oldWndPlacement; //鍘熺獥鍙d綅緗?/span>
BOOL bFullScreen;
CRect m_rcFullScreen; //琛ㄧず鍏ㄥ睆鏄劇ず鏃剁殑紿楀彛浣嶇疆
//-----------------------------------------------------------------------
// 鍑芥暟鍚?nbsp; : CMainFrame::OnFullscreen
// 璇存槑 : 鍏ㄥ睆鐘舵?br>
// 榪斿洖 : void
// 浣滆?nbsp; : Teng
// 鍒涘緩鏃墮棿 : 2009-5-31 13:48:54
// 鏈鍚庝慨鏀?nbsp; : 2009-5-31
//-----------------------------------------------------------------------
void CMainFrame::OnFullscreen()

{
GetWindowPlacement( &m_oldWndPlacement ); //鑾峰緱騫朵繚瀛樺綋鍓嶇獥鍙g殑浣嶇疆
CRect rcWindow;
GetWindowRect( &rcWindow );
CRect rcClient;
GetClientRect( &rcClient );
//閲嶇疆瑙嗗浘鐨勬墍鏈夋帶鍒舵潯浣嶇疆
RepositionBars( 0, 0xFFFF, AFX_IDW_PANE_FIRST, reposQuery, &rcClient );
ClientToScreen( &rcClient );
//寰楀埌灞忓箷鍒嗚鯨鐜?/span>
int nFullScreenW = GetSystemMetrics( SM_CXSCREEN );
int nFullScreenH = GetSystemMetrics( SM_CYSCREEN );
//灝嗛櫎鎺у埗鏉″鐨勫鎴峰尯鍏ㄥ睆鏄劇ず鍒頒粠(0,0)鍒?nFullWidth, nFullHeight)鍖哄煙,
//灝?0,0)鍜?nFullWidth, nFullHeight)涓や釜鐐規(guī)墿鍏呭師紿楀彛鍜岄櫎鎺у埗鏉′箣澶栫殑瀹㈡埛鍖轟綅緗棿鐨勫樊鍊?
//灝卞緱鍒板叏灞忔樉紺虹殑紿楀彛浣嶇疆
m_rcFullScreen.left = rcWindow.left- rcClient.left ;
m_rcFullScreen.top = rcWindow.top - rcClient.top ;
m_rcFullScreen.right = rcWindow.right - rcClient.right + nFullScreenW;
m_rcFullScreen.bottom = rcWindow.bottom - rcClient.bottom + nFullScreenH;
// 榪涘叆鍏ㄥ睆鏄劇ず鐘舵?nbsp;
WINDOWPLACEMENT wp;
wp.length = sizeof(WINDOWPLACEMENT);
wp.flags = 0;
wp.showCmd = SW_SHOWNORMAL;
wp.rcNormalPosition = m_rcFullScreen;
SetWindowPlacement( &wp );
}
//鎺ヤ笅鏉ワ紝閫氳繃ClassWizard閲嶈澆CMainFrame綾葷殑OnGetMinMaxInfo鍑芥暟錛屽湪鍏ㄥ睆鏄劇ず鏃舵彁渚涘叏灞忔樉紺虹殑浣嶇疆淇℃伅
void CMainFrame::OnGetMinMaxInfo(MINMAXINFO* lpMMI)

{
if ( bFullScreen )
{
lpMMI->ptMaxSize.x = m_rcFullScreen.Width();
lpMMI->ptMaxSize.y = m_rcFullScreen.Height();
lpMMI->ptMaxPosition.x = m_rcFullScreen.Width();
lpMMI->ptMaxPosition.y = m_rcFullScreen.Height();
lpMMI->ptMaxTrackSize.x = m_rcFullScreen.Width();
lpMMI->ptMaxTrackSize.y = m_rcFullScreen.Height();
}
CFrameWnd::OnGetMinMaxInfo(lpMMI);
}
//-----------------------------------------------------------------------
// 鍑芥暟鍚?nbsp; : CMainFrame::changeFullScreen
// 璇存槑 : 鏀瑰彉灞忓箷褰撳墠鐘舵侊紝鍏ㄥ睆榪樻槸闈炲叏灞?br>
// 榪斿洖 : void
// 浣滆?nbsp; : Teng
// 鍒涘緩鏃墮棿 : 2009-5-31 13:25:07
// 鏈鍚庝慨鏀?nbsp; : 2009-5-31
//-----------------------------------------------------------------------
void CMainFrame::changeFullScreen()

{
bFullScreen = !bFullScreen;
if ( bFullScreen )
{
OnFullscreen();
}else
{
ShowWindow( SW_SHOWNORMAL );
SetWindowPlacement( &m_oldWndPlacement );
}
}
void CFullScreenView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)

{
if ( ( nChar == VK_RETURN ) && ::GetKeyState(VK_SHIFT) < 0 )
{
TRACE("Change state!\n");
CMainFrame* pWnd = (CMainFrame*)AfxGetMainWnd();
if ( pWnd )
{
pWnd->changeFullScreen();
}
}
CView::OnKeyDown(nChar, nRepCnt, nFlags);
}
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)

{
if (CMDIFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;
//subclass client window
m_wndClient.SubclassWindow( m_hWndMDIClient );
}