Ubuntu 如何使用dllimport解决DllNotFoundException?(单声道Vb)

Ubuntu 如何使用dllimport解决DllNotFoundException?(单声道Vb),ubuntu,libraries,.net,Ubuntu,Libraries,.net,我是Unix/Linux/Ubuntu新手 我在VB中使用Mono,我试图通过DllImport(CliSiTef32I.dll/libclisitef.so)使用库中的方法,但是它一直给我DllNotFoundException 在foruns中搜索我已经尝试了一些方法: 具有包含库的路径的ld.so.conf project.exe.config中的dllMap 感谢您的帮助 我的代码:(我尝试用.Dll和.Dll直接导入,两个都不起作用) C# VB //project.exe.con

我是Unix/Linux/Ubuntu新手

我在VB中使用Mono,我试图通过DllImport(CliSiTef32I.dll/libclisitef.so)使用库中的方法,但是它一直给我DllNotFoundException

在foruns中搜索我已经尝试了一些方法:

  • 具有包含库的路径的ld.so.conf
  • project.exe.config中的dllMap
感谢您的帮助

我的代码:(我尝试用.Dll和.Dll直接导入,两个都不起作用)

C#

VB

//project.exe.config文件中的dll映射

<configuration>
    <dllmap dll="CliSiTef32I.dll" target="libclisitef.so"/>
</configuration>

我使用mono\u log\u level=debug发现了问题 它无法加载32位的dll,我尝试了64位版本,它成功了

Imports System
Imports System.IO
Imports System.Windows.Forms
Imports Microsoft.VisualBasic.Interaction


Public Module EmptyClass

    Public Sub Main()
    Dim sts as Integer
    Try
        sts = ConfiguraIntSiTefInterativo("", "", "", 0)
    Catch ex as Exception
        MsgBox(ex.ToString)
    End Try

    End Sub

    Public Declare Function ConfiguraIntSiTefInterativo Lib "libclisitef.so" (ByVal EndSiTef As String, ByVal IdLoja As String, ByVal IdTerminal As String, ByVal Reservado As Int16) As Int32
    'Public Declare Function ConfiguraIntSiTefInterativo Lib "CliSiTef32I.dll" (ByVal EndSiTef As String, ByVal IdLoja As String, ByVal IdTerminal As String, ByVal Reservado As Int16) As Int32

End Module
<configuration>
    <dllmap dll="CliSiTef32I.dll" target="libclisitef.so"/>
</configuration>
/home/pdv/Projetos/PDV/kaiser/clisitef
/lib
/lib64
/usr/lib
/usr/lib64
/usr/local/lib
/usr/local/lib64
/home/pdv/Projects/TesteTef/TesteTef/bin/Debug
include /etc/ld.so.conf.d/*.conf