数据交换应用
答
OK的地方,在VB中需要实现两个程序之间的接口,因此您可以在它们之间传递参数。
- 记得导入 “系统” 和 “的System.Reflection”
在程序1(调用程序),我设置了:
Dim oType As System.Type
Dim oAssembly As System.Reflection.Assembly
Dim oObject As System.Object
oAssembly = Reflection.Assembly.LoadFrom("C:\VB.NET\report3.exe")
oType = oAssembly.GetType("report3.r1") ' this is [root_namespace.class name]
oObject = Activator.CreateInstance(oType)
oObject.SetParams("a", "b")
oObject.show()
这将导致report3.exe运行并将其作为值发送给“a”和“b”参数。
然后在程序2(report3.exe),我把它像这样:
Imports System.Reflection
Public Class r1
Implements IPlugin
Public person As String = ""
Public address As String = ""
Private Sub r1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
Me.TopMost = True 'optional
Dim b1 As New Label()
With b1
.Location = New Point(10, 10)
.Width = 200
.Height = 20
.Parent = Me
.BackColor = Color.Blue
.ForeColor = Color.White
.Text = person
End With
call_addr()
End Sub
Public Sub SetParams(c As String, d As String) Implements IPlugin.SetParams
person = c
address = d
End Sub
Private Sub call_addr()
Dim b2 As New Label()
With b2
.Location = New Point(10, 50)
.Width = 200
.Height = 20
.Parent = Me
.BackColor = Color.Red
.text = address
End With
End Sub
End Class
Public Interface IPlugin
Sub SetParams(ByVal c As String, ByVal d As String)
End Interface
+0
好的,谢谢! –
你的两个程序之间传递数据或者是那里的数据存储就像一个数据库的地方,他们都可以读取?是一个程序调用另一个程序吗?他们是否都在同时运行,并且彼此“交谈”? – user2721815
没有数据库,是第二个调用另一个,两个同时运行 –
我已经在VB中使用一个接口完成了这个。我不知道你是否可以在C中做同样的事情。 – user2721815