シリアルポート経由でデータを送信しようとしている 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" _
)
この関数の実行中に、そのエラーが発生します。これを修正するにはどうすればよいですか?