全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1089
推到 Plurk!
推到 Facebook!

Delphi.NET引用同樣是Delphi.NET寫的Library(DLL)的問題

尚未結案
geliswu
一般會員


發表:28
回覆:15
積分:13
註冊:2004-10-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-10-16 17:05:36 IP:61.70.xxx.xxx 未訂閱
Dear All    各位先進您好,我用Delphi.NET寫一隻RemotingConsoleServer測試程式,它引用一個DLL,這個DLL也是Delphi.NET寫的Library專案的DLL(叫做RemotingClass1),但是RemotingConsoleServer將這個DLL Reference進來後編譯時居然會出現一個Error message如下:    Could not import assembly 'RemotingClass1' Because it contains namespace 'Borland.Delphi.System'.     我並沒有Reference Borland.Delphi.dll阿?????? 真傷腦筋耶~~~到底是怎麼回事哩 謝謝 Gelis 酷小毅
code6421
版主


發表:43
回覆:223
積分:208
註冊:2002-08-16

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-10-16 17:41:18 IP:220.135.xxx.xxx 未訂閱
引言: Could not import assembly 'RemotingClass1' Because it contains namespace 'Borland.Delphi.System'.
D8 的DLL 與.NET 的DLL不太一樣, 記得這樣的錯誤訊息是因為使用Library Project, 改成使用Package Project就可以了,不太記得是否要手動 到Require加入delphi.dll(Runtime-Library,分發時要一起分發出去). 沒裝DELPHI 8(也沒法裝...1.1 SP1的關係),沒法測試... Just coding... Taiwan:http://code6421.ktop.com.tw China:http://home.hoolee.com/~code6421
------
Just codeing...
geliswu
一般會員


發表:28
回覆:15
積分:13
註冊:2004-10-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-10-17 00:46:40 IP:61.70.xxx.xxx 未訂閱
Hi code6421 謝謝,我後還也發現了問題所在,你知道..因為寫.NET的習慣改不過來都直接Reference進來使用,我後來將Reference移除掉改以Delphi的 use 'Unit' --->如: use RemotingClass, --->就是那個MarshalByRefObject 物件的Unit 的 Name啦 System.Runtime.Remoting, ...... System.Runtime.Remoting.Channels.Tcp; 這樣就Ok 啦~ Run沒問題 就像你說的Library其實和.NET Assembly有些不同,他這邊同時可以use Unit的名稱同時又可以use .NET Assembly如 System.Data, System.Xml;等 Delphi.NET為了支援.NET又保留原先的use用法使人突然間混淆了..>_< ..嘿嘿 謝謝 Gelis 酷小毅
系統時間:2024-07-07 22:37:36
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!