0

我有一个 winform 应用程序,它试图通过串行端口发送一些数据。在那里,我使用的是本机 DLL,但出现此错误:

尝试读取或写入受保护的内存。这通常表明 VB.Net 中的其他内存已损坏

这就是我正在做的事情:

Public Declare Function AddScreen Lib "BX_IV.DLL" _
    ( _
    ByVal nControltype As Integer, _
    ByVal nScreenNo As Integer, _
    ByVal nWidth As Integer, _
    ByVal nHeight As Integer, _
    ByVal nScreenType As Integer, _
    ByVal nPixelMode As Integer, _
    ByVal nDataDA As Integer, _
    ByVal nDataOE As Integer, _
    ByVal nRowOrder As Integer, _
    ByVal nFreqPar As Integer, _
    ByVal pCom As String, _
    ByVal nBaud As Integer, _
    ByVal pScoketIP As String, _
    ByVal nScoketPort As Integer, _
    ByVal pScreenStatusFile As String _
    ) As Integer

我从带有所有参数的表单加载事件中调用它,如下所示:

AddScreen _
    ( _
    CONTROLLER_TYPE_4T1, _
    SCREEN_NO, _
    SCREEN_WIDTH, _
    SCREEN_HEIGHT, _
    SCREEN_TYPE, _
    1, _
    SCREEN_DATADA, _
    SCREEN_DATAOE, _
    SCREEN_ROWORDER, _
    SCREEN_FREQPAR, _
    SCREEN_COMM, _
    SCREEN_BAUD, _
    SCREEN_SOCKETIP, _
    SCREEN_SOCKETPORT, _
    "C:\\ScreenStatus.ini" _
    )

执行此功能时,我收到该错误。我能做些什么来解决这个问题?

4

0 回答 0