c#調(diào)用vc寫的ocx控件示例
在c#中怎樣調(diào)用VC寫的OCX控件,主要有兩個(gè)關(guān)鍵環(huán)節(jié)
兩個(gè)關(guān)鍵環(huán)節(jié):導(dǎo)入ocx控件,創(chuàng)建實(shí)例。
1 注冊(cè)ocx:
regsvr32.exe alasunsmscon.ocx
2 在CMD窗口中執(zhí)行:
AxImp.exe alasunsmscon.ocx
生成兩個(gè)文件:alasun.dll,Axalasun.dll
3 在項(xiàng)目中引用Axalasun.dll
4 調(diào)用
Axalasun.Axalasunsms sms = new Axalasun.Axalasunsms();
sms.CreateControl();
就可以使用了
這里還有一個(gè)c#控制臺(tái)模式下調(diào)用vc開(kāi)發(fā)的ocx組件的示例
1、注冊(cè)組件 regsvr32 C:\WINDOWS\system32\HX.ocx
2、用Aximp.exe工具對(duì)HX.ocx做轉(zhuǎn)換,對(duì)APT.ocx再次封裝成兩個(gè)類庫(kù)(HX.dll,AxHX.dll)
3、代碼
using System;
using System.Data;
using System.IO;
using System.Messaging;
using System.Net;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
using System.Web;
using System.Data.SqlClient;
using AXHH;//ocx控件
using HH;//ocx控件
using System.Windows.Forms;
namespace Ocx_test
{
public class Program
{
//設(shè)置靜態(tài)變量
static AXHH hh;
[STAThread]
static void Main(string[] args)
{
//初始化ocx控件
hh = new AXHH();
//顯式調(diào)用該實(shí)例的CreateControl()方法才能調(diào)用其他方法否則在調(diào)用時(shí)系統(tǒng)將報(bào)AxHost.InvalidActiveXStateException異常
hh.CreateControl();
//調(diào)用控件屬性及方法
hh.ip="127.0.0.1";
hh.test();
}
}
4、注意,如果是多線程調(diào)用,則在 線程名.Start() 前加上,例如:
線程名.SetApartmentState(System.Threading.ApartmentState.STA);//設(shè)置模式,必須在啟動(dòng)之前設(shè)置。
// 啟動(dòng)線程將調(diào)用 ThreadStart 委托。
線程名.Start();
相關(guān)文章
VisualStudio2019安裝C#環(huán)境的實(shí)現(xiàn)方法
這篇文章主要介紹了VisualStudio2019安裝C#環(huán)境的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
C# .NET實(shí)現(xiàn)掃描識(shí)別圖片中的文字
本文以C#及VB.NET代碼為例,介紹如何掃描并讀取圖片中的文字。文中的示例代碼介紹詳細(xì),對(duì)我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2021-12-12
C#基于Socket的TCP通信實(shí)現(xiàn)聊天室案例
這篇文章主要為大家詳細(xì)介紹了C#基于Socket的TCP通信實(shí)現(xiàn)聊天室案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
C#跨平臺(tái)開(kāi)發(fā)之使用C/C++生成的動(dòng)態(tài)鏈接庫(kù)
這篇文章介紹了C#跨平臺(tái)開(kāi)發(fā)之使用C/C++生成的動(dòng)態(tài)鏈接庫(kù),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-01-01
將DLL放入到資源中,運(yùn)行時(shí)自動(dòng)加載的小例子
這篇文章介紹了將DLL放入到資源中,運(yùn)行時(shí)自動(dòng)加載的小例子,有需要的朋友可以參考一下2013-10-10

