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

DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u

[es] :: Pascal / Delphi / Kylix :: DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u

[ Pregleda: 3041 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

stalker
Branko Kokanovic
Beograd

Član broj: 11897
Poruke: 606
*.etf.bg.ac.yu



+2 Profil

icon DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u03.09.2004. u 19:53 - pre 215 meseci
Evo, ovako. Ja ne znam delphi, kolega ne zna c. Ja imam klasu
Code:

class klasa{
public:
    int f1(void);
    ...
};
...

Treba pozvati funkciju iz dll-a (napisanog na delphiju) ciji bi prototip na c-u izgledao
int poziv(HWND,klasa*,...);
E, sad, kako ce on to uspeti da izvede i kako ce pozivati funkcije iz moje klase. Za HWND nam je jasno, uglavnom za sve standardne tipove postoje ekvivalenti, ali sta sa klasom? Pretpostavljamo da on mora da ima neku definiciju/prototip (kako god da se to zove u delphiju) moje klase? Da li je neko radio nesto slicno i kako bi to moglo da se izvede?
Uf, ako nije jasno, pojasnicu jos...
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
195.252.85.*

Sajt: localhost


+4 Profil

icon Re: DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u03.09.2004. u 23:55 - pre 215 meseci
ako taj C++ nije rađen u borlandovom C++ builderu, verujem da neće moći to tako direktno..

C++ klase i Delphi klase nemaju istu strukturu u memoriji, tako da to ima malo šanse da proradi..

preporučujem ili čist DLL interfejs, ili COM server/klijent.. (to je bar u delphiju lako)
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.191.EUnet.yu



+1 Profil

icon Re: DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u04.09.2004. u 00:00 - pre 215 meseci
Klase Delphi-a i C++ nisu kompatibilne. Mozes poslati ili primiti pokazivac ali nista ne vredi jer funkcionisu drugacije. Pod NET platformom je druga prica i razliciti programski jezici dele istu strukturu za klase. Imas dva resenja: koristiti interfejse ili uraditi klasicnu komunikaciju preko procedura/funkcija.
 
Odgovor na temu

stalker
Branko Kokanovic
Beograd

Član broj: 11897
Poruke: 606
*.etf.bg.ac.yu



+2 Profil

icon Re: DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u04.09.2004. u 12:10 - pre 215 meseci
A sta kazete na ovo: ja njemu prosledim hwnd mog prozora sto mu je kljucno. On iz moje klase treba da uzima neke podatke (max. 6 takvih). Da se to uradi preko WM poruka? On ima moj hwnd. Salje mi SendMessage(hwnd,WM_NJEGOVZAHTEV,0,0), a ja to primam,zovem tu klasu,obradjujem i vracam rezultat? Ne verujem da bi bilo komplikovano, posebno jer ne bi bilo mnogo poruka, samo jel bi bilo cudno il' smesno?
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.207.eunet.yu



+1 Profil

icon Re: DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u04.09.2004. u 16:30 - pre 215 meseci
Nije ni cudno ni smesno, samo je pitanje sta bolje ispunjava zahtev. Ako vec imas dll onda je bolje da radis preko procedura i funkcija jer imas na raspolaganju proizvoljan broj i tip parametara u odnosu na SendMessage.
 
Odgovor na temu

vladab
Vladimir Bašanović
Beograd

Član broj: 9512
Poruke: 498
*.vdial.verat.net



Profil

icon Re: DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u04.09.2004. u 19:02 - pre 215 meseci
A da se ti podaci posalju u text fajl, koji ce da se obradjuje u Delphiju, posto nema puno podataka i treba da se odradi jednom ili 2 puta u toku rada?
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.3.EUnet.yu



+1 Profil

icon Re: DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u04.09.2004. u 20:41 - pre 215 meseci
Mislim da je bolje da vezba ovu razmenu podataka direktno dll-exe :)
 
Odgovor na temu

stalker
Branko Kokanovic
Beograd

Član broj: 11897
Poruke: 606
*.etf.bg.ac.yu



+2 Profil

icon Re: DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u04.09.2004. u 21:40 - pre 215 meseci
Procedure i/ili funkcije ne dolaze u obzir, posto ja pozivam jednu funkciju, a on treba da pokupi te podatke iz mog programa, a ja ne znam kada, tako da prakticno dll treba da zove moj program i moje funkcije, a ne ja njega!? Paradoksalno mozda...
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.144.EUnet.yu



+1 Profil

icon Re: DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u04.09.2004. u 23:46 - pre 215 meseci
Nista paradoksalno, obicne callback funkcije. Dosta Windows API stvari radi pomocu takvog sistema.
 
Odgovor na temu

stalker
Branko Kokanovic
Beograd

Član broj: 11897
Poruke: 606
*.etf.bg.ac.yu



+2 Profil

icon Re: DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u05.09.2004. u 00:41 - pre 215 meseci
Da, ali ako ja imam
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
npr. kako delphi vidi i poziva to? Ako je ovo moguce, onda je to lepa alternativa WM_MAMBODZAMBO i vredi razmisliti o njoj
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.180.EUnet.yu



+1 Profil

icon Re: DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u05.09.2004. u 11:34 - pre 215 meseci
Pogledaj kako funkcionisu EnumXXX funkcije u Windows.pas fajlu. One rade preko mehanizma povratnih poziva na liniji c/c++ - Delphi.
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: DLL pravljen u delphiju treba da primi pokazivac na klasu pravljenu u C++-u

[ Pregleda: 3041 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

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