1

別のプログラム(VB.Netではない)から呼び出すことができるVB.Net exeでサブルーチンを作成することは可能ですか?これはassembly(dll)で実行できることは承知していますが、exeでも実行できますか?

[編集]このVB.Netexeは、呼び出されたときにすでに実行されています。

[Edit2] VB.Netプログラム、これらはコンパイルされてBA_SyncNet.exeになります-Form1.vb

Public Class Form1
    ...
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        ...
    End Sub
End Class

VB.Netプログラム-Helloworld.vb

Namespace MapInfoBA.MiProBA.SamplesBA
    Public Class HelloWorld

        Public Shared Sub SayHello(ByVal s As String)
            System.Windows.Forms.MessageBox.Show("Hello, " + s)
        End Sub

    End Class
End Namespace

プログラムba.mbxを呼び出すと、次のものが使用されます。

Declare Method SayHello Class "MapInfoBA.MiProBA.SamplesBA.HelloWorld"  Lib "BA_SyncNet.exe" (ByVal strName As String)

Sub Main()
    Call SayHello("World")
End Sub

敬具

4

2 に答える 2

2

私はあなたがアセンブリでこれを行うことができることを知っています

.exeは一種のアセンブリです。あ、はい。

于 2013-02-08T22:16:44.313 に答える
0

MapBasicプログラムを使用してファイル(たとえば、DoThisVBNet.txt)を作成します。

次に、vb.netプログラムがファイルを時々チェックします。vb.netプログラムは、DoThisVBNet.txtファイルに基づいてタスクを実行します(この場合は、サブルーチンを呼び出します)。

ただし、2つのプログラムがファイルを使用しているため、ファイルへのアクセス時に問題が発生する可能性があります。これを修正するには、ファイルの代わりにレジストリを使用します。

于 2013-02-09T03:07:10.153 に答える