最近剛開發了個activeX控件,下面是我的一些簡單總結。
1. 先創建一個類庫項目,在AssemblyInfo.cs設置 [assembly: ComVisible(true)]
,意思是使此程序集中的類型對COM組件可見。使用命名空間using System.Runtime.InteropServices;設置[assembly: System.Security.AllowPartiallyTrustedCallers()],保證程序集的可訪問。
2.在自定義的類上用vs自帶工具生成新的GUID,放在類前,如[Guid("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")]。同時在生成標簽頁勾選“為Com互操作注冊”,編譯生成,在注冊表下可以找到對應注冊碼。注意:win7下用管理員權限打開IDE。
3.在web頁面上使用<object id="id" classid="clsid:{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}" ></object>獲取activeX控件,並調用方法成功。注意:此處未對控件添加證書,所以要想訪問到控件,需設置浏覽器安全信息,這個就不多說了。
相關參考鏈接:
http://blog.sina.com.cn/s/blog_458983150100esga.html
http://blog.163.com/tom19900920@126/blog/static/2349868720121195250522/
http://xu.xue.yi.blog.163.com/blog/static/9573824820101114111941871/
http://www.woxihuan.com/139766224/1336830428086975.shtml
左移運算符(<<)
將一個運算對象的各二進制位全部左移若干位(左邊的二進制位丟棄,右邊補0)。
例:a = a << 2 將a的二進制位左移2位,右補0,
左移1位後a = a * 2;
若左移時捨棄的高位不包含1,則每左移一位,相當於該數乘以2。
右移運算符(>>)
將一個數的各二進制位全部右移若干位,正數左補0,負數左補1,右邊丟棄。
操作數每右移一位,相當於該數除以2。
例如:a = a >> 2 將a的二進制位右移2位,
左補0 or 補1 得看被移數是正還是負。
左移運算符(<<)
將一個運算對象的各二進制位全部左移若干位(左邊的二進制位丟棄,右邊補0)。
例:a = a << 2 將a的二進制位左移2位,右補0,
左移1位後a = a * 2;
若左移時捨棄的高位不包含1,則每左移一位,相當於該數乘以2。
右移運算符(>>)
將一個數的各二進制位全部右移若干位,正數左補0,負數左補1,右邊丟棄。
操作數每右移一位,相當於該數除以2。
例如:a = a >> 2 將a的二進制位右移2位,
左補0 or 補1 得看被移數是正還是負。