Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

A VB.NET DLL calling by Fortran

Schwandt__Olaf
Débutant
1 619 Visites

Hi there,

and here is my second question today.

I like to call a VB.NET by Fortran. But I don't know how. I don't understand how t call a object-oriented language by Fortran.

 

Thanks

 

Olaf

0 Compliments
10 Réponses
Steve_Lionel
Contributeur émérite III
1 619 Visites

There are two examples of doing this in the Parallel Studio XE for Windows Sample Bundle: MixedLanguage\VB-Calls-Fortran is the simplest.

0 Compliments
Schwandt__Olaf
Débutant
1 619 Visites

Hi Steve,

thank you very much, but I like to call a VB.NET DLL FROM Fortran, so I look for Fortran-Calls-VB.NET.

Can you help again?

Olaf

0 Compliments
Steve_Lionel
Contributeur émérite III
1 619 Visites

It would have to be a native mode DLL, in which case you would call it just the same as any other DLL. You would have to make sure you have the naming and calling conventions right (STDCALL on IA-32), and a lot of VB argument types won't map to Fortran in that direction.

What exactly are you trying to do here? Show the declaration of a VB routine you want to call.

0 Compliments
Schwandt__Olaf
Débutant
1 619 Visites
Hi Steve, I have a VB,DLL from another application. In the handbook from that is written a call from a another VB.NET. Here is an extract : Public net1 As New NNToolNetLib.NNToolNet

With net1 .... a = .NNLoadF(DscFile) .... For i = 1 To .InputCount
.NetInput(i) = CStr(i * 10.1) Next a = .NetEvalF ... For i = 1 To .OutputCount a = 1 To .NetOutput(i) --- Next .... But I need to do that in Fortran or if necessary in C++ Regards Olaf
0 Compliments
Steve_Lionel
Contributeur émérite III
1 619 Visites

You have not shown what the interface to the procedure is.

0 Compliments
Schwandt__Olaf
Débutant
1 619 Visites

Hi Steve,

thank you for your answer.

That interface is all I have.

I couldt write an interface routine between the vb.net dll and fortran, I would say in VB.NET. But I don't know how.

regards

Olaf

0 Compliments
Steve_Lionel
Contributeur émérite III
1 619 Visites

That's not an interface. The declaration of the routine is somewhere else. My guess, though, is that the routine is VB.NET specific and doesn't support calls from other languages. You can try calling into a VB routine you write that then calls this other routine.

0 Compliments
Schwandt__Olaf
Débutant
1 619 Visites

Here is the attachment

0 Compliments
Schwandt__Olaf
Débutant
1 619 Visites

Hi Steve,

I found in the environment of the commercial VB.NET-DLL a directory, wich is called "LibFIles"

I give you the files attached. Is someone of this what we need?

Olaf

0 Compliments
Steve_Lionel
Contributeur émérite III
1 619 Visites

I have no clue what to do with the contents of that ZIP. I don't see anything I recognize as a source file.

0 Compliments
Répondre