锘??xml version="1.0" encoding="utf-8" standalone="yes"?> 鍏堢湅涓涓緥瀛愶細 1銆佸垱寤轟竴涓姩鎬侀摼鎺ュ埌MFC DLL鐨勮鍒橠LL錛屽叾鍐呴儴鍖呭惈涓涓璇濇璧勬簮銆傛寚瀹氳瀵硅瘽妗咺D濡備笅錛?br /> 2銆佸垱寤轟竴涓熀浜庡璇濇鐨刴fc搴旂敤紼嬪簭錛屽畠鍖呭惈涓や釜瀵硅瘽妗嗚祫婧愶紝IDD_UI_DIALOG鍜孖DD_EXE_DIALOG銆傚茍灝嗗悗鑰呯殑ID鎸囧畾濡備笅錛?br /> 鏂規(guī)硶1銆?/p> // in DLL 娉細AFX_MANAGE_STATE(AfxGetStaticModuleState());涓瀹氭槸浣滀負鎺ュ彛鍑芥暟鐨勭涓鏉¤鍙ャ?br /> 鏂規(guī)硶2銆?/p> // in DLL 娉細AfxGetResourceHandle錛氳幏鍙栧綋鍓嶈祫婧愭ā鍧楀彞鏌勶紱AfxSetResourceHandle錛氳緗▼搴忕洰鍓嶈浣跨敤鐨勮祫婧愭ā鍧楀彞鏌勩?br /> 2銆佸湪搴旂敤紼嬪簭涓敼榪涳細 // in EXE 娉細浣跨敤鐘舵佸垏鎹㈢殑鎯呭喌錛氬綋DLL瀵煎嚭鍑芥暟鍖呭惈MFC璧勬簮銆佺被鎴栬呴渶瑕佸垱寤虹獥鍙f椂銆?br />
鍏朵腑鍓嶈呮槸榪欎釜搴旂敤紼嬪簭鐨勭敤鎴風晫闈紝鍗曞嚮涓婇潰鐨勬寜閽紝灝嗗脊鍑轟竴涓璇濇銆傞儴鍒嗕唬鐮佸涓嬶細
// in DLL
void CDLL::ShowDlg(void)
{
}
// in EXE
void CEXE::OnButtonClick()
{
}
3銆佸崟鍑繪寜閽紝寮瑰嚭鐨勪笉鏄湡鏈涚殑DLL涓殑瀵硅瘽妗咺DD_DLL_DIALOG錛岃屾槸搴旂敤紼嬪簭涓殑瀵硅瘽妗咺DD_EXE_DIALOG銆?br />
瑙i噴錛?/strong>
1銆佸簲鐢ㄧ▼搴忚繘紼嬫湰韜強鍏惰皟鐢ㄧ殑姣忎釜DLL妯″潡閮藉叿鏈変竴涓叏灞鍞竴鐨凥INSTANCE鍙ユ焺錛屽畠浠唬琛ㄤ簡EXE鎴朌LL妯″潡鍦ㄨ繘紼嬭櫄鎷熺┖闂翠腑鐨勮搗濮嬪湴鍧銆傦紙榪涚▼鏈韓鐨勬ā鍧楀彞鏌勪竴鑸負0x400000錛岃孌LL妯″潡鐨勭己鐪佸彞鏌勪負0x10000000銆傚鏋滅▼搴忓悓鏃跺姞杞戒簡澶氫釜DLL錛屽垯姣忎釜DLL妯″潡閮戒細鏈変笉鍚岀殑HINSTANCE銆傚簲鐢ㄧ▼搴忓湪鍔犺澆DLL鏃跺鍏惰繘琛屼簡閲嶅畾浣嶏級銆?br />2銆佸叡浜玀FC DLL錛堟垨MFC鎵╁睍DLL錛夌殑瑙勫垯DLL娑夊強鍒癏INSTANCE鍙ユ焺闂錛?u>HINSTANCE鍙ユ焺瀵逛簬鍔犺澆璧勬簮鐗瑰埆閲嶈銆侲XE鍜孌LL閮芥湁鍏惰嚜宸辯殑璧勬簮錛岃屼笖榪欎簺璧勬簮鐨処D鍙兘閲嶅錛屽鏋滃簲鐢ㄧ▼搴忎笌瑙勫垯DLL鍏變韓MFC DLL錛堟垨MFC鎵╁睍DLL錛夛紝閭d箞灝嗘繪槸榛樿浣跨敤EXE鐨勮祫婧?/u>銆?br />3銆佸洜姝ゅ簲鐢ㄧ▼搴忛渶瑕侀氳繃璧勬簮妯″潡鐨勫垏鎹㈡潵鎵懼埌姝g‘鐨勮祫婧愩傚鏋滃簲鐢ㄧ▼搴忛渶瑕佹潵鑷簬DLL鐨勮祫婧愶紝灝卞簲灝嗚祫婧愭ā鍧楀彞鏌勬寚瀹氫負DLL鐨勬ā鍧楀彞鏌勶紱濡傛灉闇瑕丒XE鏂囦歡涓寘鍚殑璧勬簮錛屽氨搴斿皢璧勬簮妯″潡鍙ユ焺鎸囧畾涓篍XE鐨勬ā鍧楀彞鏌勩?br />
瑙e喅鍔炴硶錛?/strong>
1銆佸湪DLL涓敼榪涳細
void CDLL::ShowDlg(void)
{
}
void CDLL::ShowDlg(void)
{
}
void CEXE::OnButtonClick()
{
track: http://tech.163.com/06/0316/10/2CB1FGNG0009159F_4.html
杞嚜
]]>
鍦╬roject->settings->Microsoft foundation classes涓嬮夋嫨USE MFC in a static library,閲嶆柊build涓嬈★紝搴旇灝卞彲浠ヤ簡銆?nbsp;