如何从C++;基于VB.NET中DLL文件的标准库
我有一个DLL文件(用C++编写),ReadTemp函数返回两个整数(文档说明,该函数返回一个由两个整数组成的列表) 我不知道如何从DLL文件接收VB.net中的对象 这是我的密码:如何从C++;基于VB.NET中DLL文件的标准库,vb.net,Vb.net,我有一个DLL文件(用C++编写),ReadTemp函数返回两个整数(文档说明,该函数返回一个由两个整数组成的列表) 我不知道如何从DLL文件接收VB.net中的对象 这是我的密码: Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click TextBox1.Text = ReadTemp(2) End Sub 从以下代码调用DLL: Private Declare Functio
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
TextBox1.Text = ReadTemp(2)
End Sub
从以下代码调用DLL:
Private Declare Function ReportSN Lib "VCDLL.dll" () As Int32
Private Declare Function ReadTemp Lib "VCDLL.dll" (ByVal SN As Int32) As Single
编辑:
添加了DLL文件中的C++代码:
list<float> ReadTemp(int SN) {
list <float> temp(2);
if () // Test if connection to COM-port is good
{
for () // Runs only 2 times
{
temp.push_back(fVal);
}
}
else
{
// Ugly error message
temp.push_back(-999);
temp.push_back(-999);
return temp;
}
return temp;
}
list ReadTemp(内部序列号){
临时名单(2);
if()//测试与COM端口的连接是否良好
{
for()//只运行2次
{
回推温度(fVal);
}
}
其他的
{
//丑陋的错误消息
温度推回(-999);
温度推回(-999);
返回温度;
}
返回温度;
}
请在C++中显示函数的签名。@ gSerg我已经添加了C++函数,可能的副本不是“多输出”,这是C++标准库中的一个对象。请参阅链接以了解解决方法。@GSerg我不确定我是否完全理解该链接如何帮助我?我需要在C++代码中更改以接收多个输出?最好避免在C++中向VB….NET返回一个对象…