請問如何在BCB6 使用MFC DLL( for VS.NET & COM元件)? |
尚未結案
|
kj68215
初階會員 發表:47 回覆:91 積分:27 註冊:2003-08-09 發送簡訊給我 |
請問各位是否有曾在vs.net的MFC DLL做成 .dll檔案給bcb6使用的經驗呢?
小弟最近利用微軟msdn上給範例,做了一Encoder的編碼器!
因為小弟對這方面不太熟,於是找了KTOP裡的相關文章↓
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=33420
以這篇包大所提供的範例,是純Win32模式.
小弟試著用包大寫的範例code,原封不動的用在mfc模式,結果卻不是那麼的順利...
---------------------------------------------------------------------
<靜態方式>
複製了VCDll.dll 及 VCDll.h到該bcb存放專案的子目錄裡 → OK
implib -a VCDll.lib VCDll.dll → OK
把VCDll.lib用Project Manager新增進去 → OK
再來把bcb的.cpp檔裡引進了#include "VCDll.h" → OK 但發生了許多沒有引進許多mfc具有的表頭檔.
ex: stdafx.h、atltrace.h、afxstr.h...等等
此外,還出現了"W8017 Redefinition of '_WIN32_WINDOWS' is not identical"錯誤訊息... <動態方式>
既然用靜態的方式會#include "VCDll.h"...
後來小弟動態的方式,用dll給bcb6使用,但發生了神奇的事..
竟然看得到ShowMessage的Dialog內容了!
但是在ShowMessage之前卻會發生Debug Assertion Failed!的錯誤訊息↓
按下"忽略"就可以看到ShowMessage的Dialg內容!
---------------------------------------------------------------------
請問是怎麼一回事呢?另外,Encoder的sample code用到了COM,可否適合做成dll給bcb用呢?
小弟實在是苦惱了許久! 這一帖也提到相關的問題↓
> -----------------------
請多多指教啦!!^^ 發表人 -
------
----------------------- 請多多指教啦!!^^ |
pkdemon
初階會員 發表:2 回覆:51 積分:25 註冊:2004-09-13 發送簡訊給我 |
kj68215你好 小弟我剛接觸MFC不久,之前也遇過這樣的問題,以下是個人淺見
-------------------------------------------------------------------
這個錯誤訊息應該是你include的檔案中有ASSERT()的判斷式(可參考MSDN) 你可以trace看看,在ASSERT()中的值應該是FALSE or NULL才會發生錯誤 另外這個判斷式只會在Debug的模式下做判斷..... 以上如有錯誤請各位大大指教....新手上
|
kj68215
初階會員 發表:47 回覆:91 積分:27 註冊:2003-08-09 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |