Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pravljenje DLL-a?

[es] :: C/C++ programiranje :: Pravljenje DLL-a?

[ Pregleda: 2634 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

kiccra
Rakic Dragan
Kragujevac

Član broj: 37370
Poruke: 16
*.rcub.bg.ac.yu.



Profil

icon Pravljenje DLL-a?19.10.2004. u 10:50 - pre 237 meseci
Kako da pozovem aplikaciju pisanu u c++ iz aplikacije pisane u fortranu posredstvom DLL-a?

Primer ili linkovi dobrodosli.
1+1=2
 
Odgovor na temu

yooyo

Član broj: 4891
Poruke: 1101
*.nat-pool.bgd.sbb.co.yu.



Profil

icon Re: Pravljenje DLL-a?19.10.2004. u 11:27 - pre 237 meseci
Napravi u MSVC-u prazan Win32 DLL projekat.
U CPP-u napisi funkciju koji zelis da exportujes kao npr:
Code:

extern "C" __declspec(dllexport) int NekaFunkcija(int a, int b)
{
 return a+b;
}


Obrati paznju na extern "C". To znaci da se forsira komajleru da generise _cdecl nacin pozivanja funkcije. Moguce je da to zasmeta fortranu pa ono "C" promeni u _stdcall ili _pascal ili nesto trece. Samo vodi racuna da ce ime funkcije biti modifikovano (kompajler ce dodati _ pre i @nesto posle imena) ako poziv funkcije nije _cdecl (tj. "C").

Kada prevedes projekat, dobices DLL u kome se nalazi exportovana tvoja funkcija.
Mozes je videti koriscenjem programa Dependency viewer (Depends.exe) koji dolazi uz MSVC.

E sada dolazi na red Fortran:
Fortran generalno ne podrzava rad sa DLL-ovima. Zato su proizvodjaci svaki na svoj nacin napravili resenje za ucitavanje DLL-a. U zavisnosti koji fortran kompajler koristis potrazi na googlu kako se ucitava DLL. Ima dosta primera ( [url]http://math.cl.uh.edu/~thompsonla/5537/call_c_fortran_splus.html[/url] )

yooyo
 
Odgovor na temu

kiccra
Rakic Dragan
Kragujevac

Član broj: 37370
Poruke: 16
*.rcub.bg.ac.yu.



Profil

icon Re: Pravljenje DLL-a?20.10.2004. u 13:36 - pre 237 meseci
OK. A na koji nacin mogu da ostvarim da dva *.exe fajla komuniciraju posredstvom dll-a. Da recimo, pokrenem *.exe pisan u fortranu u da mi se u njemu stampa poruka iz *.exe pisanog u C++? Inace koristim VS6 i DVF90.

Hvala u napred.
1+1=2
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
66.228.70.*



+6 Profil

icon Re: Pravljenje DLL-a?20.10.2004. u 14:26 - pre 237 meseci
Zanima te interpropess comunication (IPC)? Pogledaj recimo:

http://www.codeproject.com/threads/ipcworkshop.asp
 
Odgovor na temu

kiccra
Rakic Dragan
Kragujevac

Član broj: 37370
Poruke: 16
*.rcub.bg.ac.yu.



Profil

icon Re: Pravljenje DLL-a?03.11.2004. u 10:13 - pre 237 meseci
Resenje sam nasao na adresi:

http://h18009.www1.hp.com/fortran/examples/vc-example1.html

Hvala svima koji su mi pomogli.
kiccra
1+1=2
 
Odgovor na temu

[es] :: C/C++ programiranje :: Pravljenje DLL-a?

[ Pregleda: 2634 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.