<strike id="fxlxl"></strike><font id="fxlxl"><em id="fxlxl"><thead id="fxlxl"></thead></em></font>

<track id="fxlxl"><delect id="fxlxl"><cite id="fxlxl"></cite></delect></track>

<ins id="fxlxl"></ins>

    <ins id="fxlxl"></ins>
    <track id="fxlxl"><delect id="fxlxl"></delect></track>

          <strike id="fxlxl"></strike>

          潤宇軟件
          首 頁 企業簡介 項目案例 軟件定制 行業軟件 解決方案 企業資訊 服務專區 客服中心
          業務介紹:西安軟件公司、軟件開發、軟件定制、軟件外包
          軟件 方案 文章
            潤宇軟件 >> 新聞資訊  >> 解決方案

          用C#編寫ActiveX控件

          發布時間:2015/8/7  瀏覽次數:22次  字體【    】
          ActiveX控件支持自定義程序接口。利用這種方法,外部可以訪問控件的事件和屬性,Web開發者可以自動操作他們的Web頁面,等同于一般的桌面應用的功能。
          介紹
          作為一個Web應用程序開發者我們想提供給我們的用戶具有更強功能的應用程序。我們想為用戶通過腳本提供像打印流,本地Socket程序,本地線程這樣功能的程序,但是正如我們所知由于任何標準瀏覽器出于Internet斷連結構和安全約束,完成這樣的任務十分困難。還好有了ActiveX帶來了實現的可能。
          用C#編寫ActiveX類
          先寫一個包含所有方法屬性定義的接口ASignatures。通過在瀏覽器中執行JavaScript來訪問這些方法或屬性。接口中所有成員是抽象并公開的。ActiveX類Aclass繼承自這個接口。在ActiveX類上我們必須指名其ClassInterfaceType是AutoDal(*注:指示自動為類生成雙重接口并向COM公開。為該類接口生成類型信息并在類庫中發布)。一般AutoDual是不被推薦使用的因為它有版本限制。我們這里采用只是出于學習的目的。在類中我們寫兩個方法Fname()和Sname()和一個屬性Age。在例子中返回基本數據類型,其實它也可以實現更復雜的數據類型。
          using System;
          using System.Runtime.InteropServices;
          namespace ANamespace
          {

          public interface ASignatures
          {
          string FName();
          string SName();
          int Age { get;}
          }

          [ClassInterface(ClassInterfaceType.AutoDual)]
          public class AClass :ASignatures
          {
          public string FName()
          {
          return "Very";
          }
          public string SName()
          {
          return "Happy";
          }
          public int Age
          {
          get { return 24; }
          }
          }
          }
          編譯ActiveX控件
          對那些不知道如何在Visual Studio IDE外編譯的,你必需找到C#編譯器 csc.exe在下列文件夾中:
          /WINDOWS/Microsoft.NET/Framework/v2.0.xxxxx
          把你的Aclass.cs文件在放在csc.exe這個文件夾中。進入命令行中執行如下命令:
          csc /t:library AClass.cs
          客戶端注冊組件
          你可以通過多種途徑注冊組件。例如:創建安裝文件或者自解壓文件可以迅速的從瀏覽器中下載。我們的示例簡單的在客戶端命令行模式進行注冊。在相同的文件夾下執行下面命令:
          regasm AClass.dll /tlb /codebase
          必須確定客戶端已經安裝了.NET Framework。
          使用ActiveX控件
          通過JavaScript創建ActiveX控件,調用方法和屬性,返回的值顯示在對話框中。下面代碼告訴我們如何訪問ActiveX控件的屬性和方法。
          <html>
          <head>
          <script language="javascript">
          <!-- 讀取 ActiveX 對象 -->
          var x = new ActiveXObject("ANamespace.AClass");
          <!-- 訪問方法 -->
          alert(x.FName());
          alert(x.SName());
          <!-- 訪問屬性 -->
          alert(x.Age);
          </script>
          </head>
          <body>
          </body>
          </html>
          在Internet Explorer中運行(*注:需要在本地安全設置中啟用“對未標記為可安全執行腳本的ActiveX初始化并執行腳本”),如果是FireFox或者Safari瀏覽器則需要API的插件。
            關閉本頁
          西部IT網合作伙伴 合作伙伴
          陜西省 | 榆林 | 延安 | 銅川 | 渭南 | 商洛 | 寶雞 | 漢中 | 安康 | 咸陽
          網站首頁 | 關于我們 | 售后服務 | 項目合同 | 查看留言 | 在線留言 | 客服中心
          © 版權所有:西安潤宇軟件科技有限公司 
          公司地址:西安市絲路國際創意夢工廠4號樓 聯系電話:029-87878512 手機:13468700578 聯系人:李先生
          Copyright ® 2009-2015 RunYusoft.com Inc. All Rights Reserved 
          技術支持:西安潤宇軟件科技有限公司  陜ICP備11000720號
          日韩激情无码一级毛片软件,亚洲 日韩在线 中文字幕,中日韩AV自慰,日韩在线人成精品中文字幕