C#中使用VARIANT_BOOL
谁会将dll文件中的这个函数:VARIANT_BOOL Connect_Net( [in] BSTR IPAdd,[in] long Portl)通过C#调用出来吗我在vs里面写了一段代码,结果不行:using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
namespace MyProject00
{
class Program
{
[DllImport(@"F:\project\zkemsdk.dll", CallingConvention = CallingConvention.StdCall)]
public static extern bool Connect_Net([MarshalAs(UnmanagedType.BStr)] String ipadd, long port);
[return: MarshalAs(UnmanagedType.VariantBool)]
static void Main(string[] args)
{
if (Connect_Net("192.168.1.200", 4370))
{
Console.WriteLine("Connect ok!!!");
Console.ReadKey();
}
else
{
Console.WriteLine("Connect fail!");
Console.ReadKey();
}
}
}
}
这个dll文件是某公司的门禁系统的动态链接库。
可是我使用exeScope却没有看到相关的函数。
我不知道为什么,有牛人可以帮我解答一下吗?感激不尽。如果需要看一下相关手册,留下邮箱吧~我发给你。 C# VARIANT_BOOL Connect_Net BSTR IPAdd --------------------编程问答-------------------- 感觉那是一个com的dll,如果是普通dll,用variant类型有些脱裤子放屁的感觉
--------------------编程问答-------------------- 直接添加com引用
VARIANT_BOOL Connect_Net([in] BSTR IPAdd, [in] long Portl)
就是
bool Connect_Net(string IpAdd, long Port1) --------------------编程问答--------------------
不懂就不要误人子弟,求你们了,你自己好好查查没VARIANT_BOOL和bool的差别,千差万别 --------------------编程问答--------------------
查什么查。看清楚我说的。CLR会自动封送COM类型。 --------------------编程问答-------------------- 联系设备厂商,询问SDK是否发生变化,或下载最新的SDK --------------------编程问答-------------------- variant_bool 是变态, vb 系统内的, 好奇怪的取值. --------------------编程问答-------------------- 我这边遇到的问题是,我想返回一个BOOL值,但在OCX控件里面,返回值与BOOL类型最相似的就只有VARIANT_BOOL类型,但不管我函数里面写什么,返回值都是VT_EMPTY,擦了,用LONG型代替值倒是暂时没出问题,但总感觉不好,主要是BOOL一眼就能直观看出,我们需要的返回值 --------------------编程问答--------------------
直接添加com引用
VARIANT_BOOL Connect_Net([in] BSTR IPAdd, [in] long Portl)
就是
bool Connect_Net(string IpAdd, long Port1)
不懂就不要误人子弟,求你们了,你自己好好查查没VARIANT_BOOL和bool的差别,千差万别
查什么查。看清楚我说的。CLR会自动封送COM类型。
大神你不要把每个人都想象成你那样,就几个字还不如不说,说了还容易误导别人
补充:.NET技术 , C#