none
有關目前VB .NET 與ActiveX的一些疑問 RRS feed

  • 問題

  • 先說一下我個人的狀況....

     

    沒使用過VB還有其他微軟的程式語言....

    然後現在要試做ActiveX的功能.....

     

    搜尋看過了一些文章.....

    有以下幾點想請教大家.....

     

    1.ActiveX用VB .NET(IDE是用VB 2005 Express)是可以開發可是比較麻煩??

       請問一下比較麻煩是指??

     

    2.是不是用VB6去開發ActiveX會比較好??那有什麼IDE可以介紹一下嗎??

     

    3. .dll跟.com檔跟ActiveX有什麼關聯??這個我看了一些文章還是看不太懂....

       感覺上是兩種檔案類型都可以寫成ActicveX

     

    最後,目前想了解的ActiveX是網頁上開啟可以下載的那種,好像ActiveX的範圍並不只限於這樣的功能,

    不知道有什麼文章是比較完整介紹ActiveX的??

     

    連初學都不算的新手.....orz

    2007年5月3日 上午 02:00

解答

  • VB.NET 開發 COM DLL,必須要使用 COM Interoperability 來做(要顯露介面,並產生 COM Type Library),

    所以程序上會比較麻煩。

    另外,VB.NET無法開發 ActiveX Control。

     

    VB 6.0 是開發 ActiveX Control 較佳的選擇,它只有一個 IDE: Visual Basic 6.0

     

    DLL 是動態連結函式庫,是被動型的軟體元件,只可以由執行檔中的程式呼叫。

    .com 是 DOS 時代的指令檔,Windows Application 已經沒有工具可以產出 .com 的執行檔了,都是 .exe。

     

    ActiveX 這個字是泛指在 Internet 上的 COM Automation 架構,包含 ActiveX Control, ActiveX Document, ActiveX Server, ...

    但你只要記住,它們都與 COM Automation 有關。

     

    以前有一本書專門介紹 ActiveX: Understanding ActiveX (Microsoft Press),但這本書絕版很久了。

    建議你直接去看 MSDN Library 的 COM Automation 專章,會有介紹:

    http://msdn2.microsoft.com/en-us/library/ms221401.aspx

    2007年5月3日 上午 02:18
    版主

所有回覆

  • VB.NET 開發 COM DLL,必須要使用 COM Interoperability 來做(要顯露介面,並產生 COM Type Library),

    所以程序上會比較麻煩。

    另外,VB.NET無法開發 ActiveX Control。

     

    VB 6.0 是開發 ActiveX Control 較佳的選擇,它只有一個 IDE: Visual Basic 6.0

     

    DLL 是動態連結函式庫,是被動型的軟體元件,只可以由執行檔中的程式呼叫。

    .com 是 DOS 時代的指令檔,Windows Application 已經沒有工具可以產出 .com 的執行檔了,都是 .exe。

     

    ActiveX 這個字是泛指在 Internet 上的 COM Automation 架構,包含 ActiveX Control, ActiveX Document, ActiveX Server, ...

    但你只要記住,它們都與 COM Automation 有關。

     

    以前有一本書專門介紹 ActiveX: Understanding ActiveX (Microsoft Press),但這本書絕版很久了。

    建議你直接去看 MSDN Library 的 COM Automation 專章,會有介紹:

    http://msdn2.microsoft.com/en-us/library/ms221401.aspx

    2007年5月3日 上午 02:18
    版主
  • 啊啊....

     

    真是太詳盡了.....

     

     

    那再請教一下.....

     

    現在微軟好像要把VB6停掉讓大家都換成VB .NET.....

     

    那這樣ActiveX會慢慢的消失嗎??

     

    畢竟它會變的比較不好開發.....

     

    因為看到很多網頁上都有ActiveX的東西....

     

    想說應該是主流吧...

     

    可是好像很難學.....

     

    牽扯好多.....Q_Q

     

    要先學懂VB再來開發會比較好???

     

    還有一個問題......

     

    .net framework是做什麼用的啊.....

     

    跟vb .net 2005有什麼關係嗎??

    2007年5月3日 上午 02:33
  • .NET Framework 是 Base Class Library,VB 2005/VB.NET 都是在它上面開發的程式語言。

    ActiveX 還不會消失,因為還有 ATL 和 MFC 的支援。

    但是可能會漸漸淡出市場,因為 .NET Framework 的策略使然。

    而且現在 Ajax, flash 和新一代的 WPF/e 都有取代 ActiveX 的能力,所以如果不是要直接存取用戶端的系統元件或硬體,

    會比較少機會用到 ActiveX Control,除非是要開發給 VB6 用 ...

    2007年5月3日 上午 02:46
    版主
  • 呃....

     

    又多了兩個看不懂的名詞......ATL、MFC

     

    那如您所說.....

     

    像之前在用讀卡機連網路ATM的時候.....

     

    這就是您所說的直接存取用戶端的系統元件跟硬體的狀況嗎??

     

    那這樣這些系統就還是得用VB6來開發嘍???

     

    Ajax跟WPF/e也是像ActiveX一樣是算一種模組??

    2007年5月3日 上午 03:01
  • 相關的名詞解釋,建議你到維基百科:http://en.wikipedia.org/wiki/Main_Page

     

    網路銀行的 ActiveX 元件是為了要存取電腦上的讀卡機,才要以 ActiveX 方式設計。

    但我認為他們用的不是 VB6,因為 VB6 要存取硬體不好處理,應該是用 C++, ATL 來開發。

     

    WPF/e 有點類似 Flash,是一個安裝在使用者電腦的元件,用來繪製由網路下載的定義資料檔(Flash 是 .swf)

    Ajax 則是瀏覽器內的 XML HTTP Module 搭配 JavaScript/XML/DOM來撰寫的用戶端互動機制。

    2007年5月3日 上午 03:18
    版主