線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1870
推到 Plurk!
推到 Facebook!

可否使用D8開發出使用於VS.Net之WinForm Control?

尚未結案
superlin
一般會員


發表:2
回覆:9
積分:2
註冊:2002-03-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-05-13 13:08:31 IP:61.70.xxx.xxx 未訂閱
Hi 大家好: 目前我打算將原來設計的一些VCL Control,轉換成WinForm Control,但是發現用D8所編譯出之WinForm Control,可以在設計階段放入Form中,但是卻無法正確執行,會出現下列訊息 [Fatal Error] Could not import assembly 'NetCtrl1' because it contains namespace 'Borland.Delphi.System' 另外它也無法出現在Visual studio .Net之工具箱中(載入時會說沒有可以載入之元件). 另外我用c#所建立的WinForm Control在D8 or VS.Net中工作都正常, 難道在.Net平台上開發WinForm Control,只能使用MS的工具,這啟非與.Net之 Language independent特性不合,我想一定是我漏掉某些步驟, 尚請有經驗的人能指導一下, 我實在不太想再花時間學另一套語言了. Thanks
code6421
版主


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-05-13 21:02:20 IP:61.216.xxx.xxx 未訂閱
引言: Hi 大家好: 目前我打算將原來設計的一些VCL Control,轉換成WinForm Control,但是發現用D8所編譯出之WinForm Control,可以在設計階段放入Form中,但是卻無法正確執行,會出現下列訊息 [Fatal Error] Could not import assembly 'NetCtrl1' because it contains namespace 'Borland.Delphi.System' 另外它也無法出現在Visual studio .Net之工具箱中(載入時會說沒有可以載入之元件). 另外我用c#所建立的WinForm Control在D8 or VS.Net中工作都正常, 難道在.Net平台上開發WinForm Control,只能使用MS的工具,這啟非與.Net之 Language independent特性不合,我想一定是我漏掉某些步驟, 尚請有經驗的人能指導一下, 我實在不太想再花時間學另一套語言了. Thanks
use package,not DLL library. Just coding... Taiwan:http://code6421.ktop.com.tw China:http://home.hoolee.com/~code6421
------
Just codeing...
superlin
一般會員


發表:2
回覆:9
積分:2
註冊:2002-03-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-05-14 08:52:32 IP:61.70.xxx.xxx 未訂閱
首先謝謝你的回答,改用Package之後已經可以在D8環境下使用,使用此Package之WinForm Application 在執行時也不會再出現Error,但是當我在VS .Net 中想將此dll放至自訂工具箱時仍會出現下列訊息,請問這該如何解決? [XXXX.DLL]中並沒有可至於工具箱的元件
code6421
版主


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-05-14 17:19:54 IP:61.216.xxx.xxx 未訂閱
引言: 首先謝謝你的回答,改用Package之後已經可以在D8環境下使用,使用此Package之WinForm Application 在執行時也不會再出現Error,但是當我在VS .Net 中想將此dll放至自訂工具箱時仍會出現下列訊息,請問這該如何解決? [XXXX.DLL]中並沒有可至於工具箱的元件
you must deploy Borland.Delphi.dll to same directory, or deploy borland.delphi.dll to GAC. Just coding... Taiwan:http://code6421.ktop.com.tw China:http://home.hoolee.com/~code6421
------
Just codeing...
superlin
一般會員


發表:2
回覆:9
積分:2
註冊:2002-03-18

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-05-15 10:50:28 IP:61.70.xxx.xxx 未訂閱
引言:
引言: 首先謝謝你的回答,改用Package之後已經可以在D8環境下使用,使用此Package之WinForm Application 在執行時也不會再出現Error,但是當我在VS .Net 中想將此dll放至自訂工具箱時仍會出現下列訊息,請問這該如何解決? [XXXX.DLL]中並沒有可至於工具箱的元件
you must deploy Borland.Delphi.dll to same directory, or deploy borland.delphi.dll to GAC. Just coding... Taiwan:http://code6421.ktop.com.tw China:http://home.hoolee.com/~code6421
非常謝謝你的回答,以上兩個動作我全做了,但結果仍然一樣,後來我將此Package加入公鑰也deploy to GAC中仍然無效,唉!真不知如何解決!相較於使用C#.Net的順風順水,讓我堅持使用Delphi的決心都有些動搖,最後再麻煩一下,請問我是否還漏掉些什麼?
code6421
版主


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

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-05-16 13:20:28 IP:61.216.xxx.xxx 未訂閱
引言: 非常謝謝你的回答,以上兩個動作我全做了,但結果仍然一樣,後來我將此Package加入公鑰也deploy to GAC中仍然無效,唉!真不知如何解決!相較於使用C#.Net的順風順水,讓我堅持使用Delphi的決心都有些動搖,最後再麻煩一下,請問我是否還漏掉些什麼?
try set Borland.Delphi.dll Copy Local properties to True, it will cause copy borland.delphi.dll to package directory, then import this package to VS.NET. Just coding... Taiwan:http://code6421.ktop.com.tw China:http://home.hoolee.com/~code6421
------
Just codeing...
superlin
一般會員


發表:2
回覆:9
積分:2
註冊:2002-03-18

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-05-16 17:16:37 IP:61.70.xxx.xxx 未訂閱
非常謝謝你的回答,目前還試不出來,相信等D8的說明文件及書籍出來後應該有比較清楚的說明,我相信D8絕對可以, 有問題只是自己,暫時決定使用C#.Net來解決我的問題,最後再次謝謝Code6421的協助 Superlin
hahalin
版主


發表:295
回覆:1698
積分:823
註冊:2002-04-14

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-05-16 17:20:46 IP:218.170.xxx.xxx 未訂閱
請教superlin是否要將自己設計的元件移植到delphi8嗎?
superlin
一般會員


發表:2
回覆:9
積分:2
註冊:2002-03-18

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-05-16 17:32:08 IP:61.70.xxx.xxx 未訂閱
引言: 請教superlin是否要將自己設計的元件移植到delphi8嗎?
我是想將目前自已設計的VCL元件移植到.NET平台,利用.Net的語言無關特性,使這些元件讓VB,C#,Delphi....等語言都可使用
hahalin
版主


發表:295
回覆:1698
積分:823
註冊:2002-04-14

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-05-16 17:37:09 IP:218.170.xxx.xxx 未訂閱
你的問題我可能有解 不過 我要出去吃點東西 晚點再試試看 希望能有更多朋友能一起討論看看
code6421
版主


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

發送簡訊給我
#11 引用回覆 回覆 發表時間:2004-05-17 13:28:00 IP:61.216.xxx.xxx 未訂閱
引言: 我是想將目前自已設計的VCL元件移植到.NET平台,利用.Net的語言無關特性,使這些元件讓VB,C#,Delphi....等語言都可使用
VCL.NET與WinForm分處不同的架構, 不同的Message Dispatch,不同的分類模式, 於VCL.NET上使用WinForm Control是可能的, 其採Wrapper模式,但反過來就複雜多了, WinForm Control設計上較簡潔,但VCL.NET 設計上較複雜且相依性高,在WinForm上使用 VCL.NET 元件是個大難題,就算使用Wrapper模式, 也要建構Container環境,效率上也不會好, 分發時也必須分發VCL.NET Package. 純WinForm Control(繼承至System.Windows.Forms.Control) 較符合你的需求,反之TControl僅適用於DELPHI. Just coding... Taiwan:http://code6421.ktop.com.tw China:http://home.hoolee.com/~code6421
------
Just codeing...
superlin
一般會員


發表:2
回覆:9
積分:2
註冊:2002-03-18

發送簡訊給我
#12 引用回覆 回覆 發表時間:2004-05-17 16:22:36 IP:61.70.xxx.xxx 未訂閱
你說的沒錯,我是想將目前自已設計的VCL元件改成WinForm Control,以避免你所提到的這些問題,所以嘗試利用D8做一個簡單的WinForm Control,我目前最大問題就是如何將D8做出來的WinForm Control,放入VS.Net的工具箱中,讓C#,VB可以在設計階段方便的使用 之前我有用ILDASM.EXE分別去看D8/C#產生的WinForm Control 組件有何差異,發現D8產生的組件沒有將資源檔放入,後來我手動將資源檔放入,結果仍然一樣
code6421
版主


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

發送簡訊給我
#13 引用回覆 回覆 發表時間:2004-05-17 17:13:51 IP:61.216.xxx.xxx 未訂閱
引言: 你說的沒錯,我是想將目前自已設計的VCL元件改成WinForm Control,以避免你所提到的這些問題,所以嘗試利用D8做一個簡單的WinForm Control,我目前最大問題就是如何將D8做出來的WinForm Control,放入VS.Net的工具箱中,讓C#,VB可以在設計階段方便的使用 之前我有用ILDASM.EXE分別去看D8/C#產生的WinForm Control 組件有何差異,發現D8產生的組件沒有將資源檔放入,後來我手動將資源檔放入,結果仍然一樣
that's a simple winform control build by D8, it can install in VS.NET 2003. http://home.pchome.com.tw/guide/code6421/Samples23.ZIP Just coding... Taiwan:http://code6421.ktop.com.tw China:http://home.hoolee.com/~code6421
------
Just codeing...
superlin
一般會員


發表:2
回覆:9
積分:2
註冊:2002-03-18

發送簡訊給我
#14 引用回覆 回覆 發表時間:2004-05-17 17:49:20 IP:61.70.xxx.xxx 未訂閱
謝謝你的協助,我使用此一Sample元件,仍然無法放入VS.Net的自訂工具箱中,由於我目前是使用VS.NET 2002,所以我會更新後再試一次,檢查是否環境問題,若有結果再跟大家報告. Thanks
andersonhsieh
版主


發表:33
回覆:531
積分:439
註冊:2002-06-10

發送簡訊給我
#15 引用回覆 回覆 發表時間:2004-05-18 12:59:59 IP:61.66.xxx.xxx 未訂閱
我覺得是.NET FrameWork的版本的問題vs.net2002的版本是1.0而d8使用的是1.1的版本...試試將.NET FrameWork昇級到1.1的版本看看吧    @@~~飛翔在天際的精靈~~@@
------
@@~~飛翔在天際的精靈~~@@
superlin
一般會員


發表:2
回覆:9
積分:2
註冊:2002-03-18

發送簡訊給我
#16 引用回覆 回覆 發表時間:2004-05-19 08:53:26 IP:61.70.xxx.xxx 未訂閱
引言: 我覺得是.NET FrameWork的版本的問題vs.net2002的版本是1.0而d8使用的是1.1的版本...試試將.NET FrameWork昇級到1.1的版本看看吧 @@~~飛翔在天際的精靈~~@@ < face="Verdana, Arial, Helvetica"> 我電腦中同時裝有.NET FrameWork1.0 與1.1,如果我將1.0移除VS.net2002會找不到工具箱,而在安裝VS.net2002時就算電腦中已經裝有.NET FrameWork1.1,它仍然要求安裝.NET FrameWork1.0,這是否代表VS.net2002並無法自動引用新版FrameWork? 另外假如使用D8開發出的組件因為是參考FrameWork1.1,因為 NameSpace的有不同的地方(程式在Using Namesapce時並不會指定版本),是否也代表不同版本.NET FrameWork組件是無法同時在一程式中混用?假如上數為真,那VS.Net2002 無法使用D8開發出的組件,感覺上應該是蠻合理的. 但是這是否意謂著,只要.NET FrameWork有不同版本問世,這些舊版開發環境就必須面對更新問題了?這啟非.-@#$%^..,照理說.NET 組件都具有自我說明的能力,開發環境應該具有可以動態或指定引用新版FrameWork的能力?如果不是如此Programmer的春天好像也沒有真正來到啊!
andersonhsieh
版主


發表:33
回覆:531
積分:439
註冊:2002-06-10

發送簡訊給我
#17 引用回覆 回覆 發表時間:2004-05-19 10:56:21 IP:61.66.xxx.xxx 未訂閱
其實這就是.net的優點....他同樣的組件是可以有不同的版本存在於系統上的..這跟原來的架構不同...即所謂A程式使用C.DLL 1.0版而B程式使用C.DLL 1.1版,在.NET的架構下C.DLL的兩個版本是可以同時存在於系統中的....只要放在不同目錄下即可.... @@~~飛翔在天際的精靈~~@@ 發表人 - andersonhsieh 於 2004/05/19 21:36:18
------
@@~~飛翔在天際的精靈~~@@
andersonhsieh
版主


發表:33
回覆:531
積分:439
註冊:2002-06-10

發送簡訊給我
#18 引用回覆 回覆 發表時間:2004-05-19 21:39:51 IP:211.23.xxx.xxx 未訂閱
附注一點說明.....vs.net 2003可以選擇使用1.0或1.1的framework @@~~飛翔在天際的精靈~~@@
------
@@~~飛翔在天際的精靈~~@@
superlin
一般會員


發表:2
回覆:9
積分:2
註冊:2002-03-18

發送簡訊給我
#19 引用回覆 回覆 發表時間:2004-05-20 08:39:20 IP:61.70.xxx.xxx 未訂閱
在此向code6421,anderson 等人說聲謝謝,讓敝人對d8與.Net平台有更大的信心,另外我原先所提的問題經各位說明後,答案應該很請楚了    可否使用D8開發出使用於VS.Net之WinForm Control? 答案是肯定的,D8是可以開發出使用於VS.Net 2003 之WinForm Control 所以敝人就將此問題結案了
系統時間:2024-05-21 6:28:25
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!