c# 调用有字符串参数的 DLL

    今天做了一个动态库,是需要在C#上面运行的一个库。由于一些参数的需要用字符串的,但是C#里面又没有字符串, 找了很多资料,才把这个东西弄好。下面介绍一下我的方法。

    下面是在 C++ 里面声明的 DLL 方法。

 

LOGON_LIB_API LONG ConnectLogonSvr(HANDLE hHandle, const char* pLogonIP, int nLogonPort);

        LOGON_LIB_API const char* Logon_GetLastError(HANDLE hHandle); 

 

 

在这个里面,需要连接服务器,要连接服务器,就需要一个字符串类型的参数指向服务器的IP地址。

 

       c# 里面的声明:

 

 

[DllImport("logon_lib.dll", EntryPoint = "ConnectLogonSvr")]

public static extern int ConnectLogonSvr(int nHandle , StringBuilder ip , int port );

 

        [DllImport("logon_lib.dll", EntryPoint = "Logon_GetLastError")]

        public static extern string Logon_GetLastError(int nHandle);

 

C# 里面的调用
StringBuilder ip = new StringBuilder() ;
ip.Append("10.1.52.210");
long nRet = ConnectLogonSvr(nHandle, ip, 2001 ); 
通过这样的方法可以完成C#调用带有字符串参数的DLL 方法。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值