[ Crazy Mix @ 08.07.2004. 10:58 ] @
Zanima me kako napisati dll u delphiju (d6), koji ce koristiti stringove kao parametre. Znam za ono ShareMem, i onda se BORLAND...nesto.DLL distribuira uz moj dll. To mi nije problem, ali da li se moze posle taj DLL koristiti i iz C-a, npr...

Znaci ja ovo znam teoretski, pa bi i parce koda dobro doslo...
[ neor @ 08.07.2004. 12:28 ] @
Ako treba da se koristi i iz C-a onda bolje nemoj da koristis Delphijeve stringove vec PChar.
[ Crazy Mix @ 08.07.2004. 13:54 ] @
Problem je u tome sto sam to probao, ali nije mi uspelo... primer?
[ hwfanatic @ 08.07.2004. 14:19 ] @
Samo proveravam da li znaš da Delphi i C koriste različite konvencije pri dodavanju parametara. Stoga, ako želiš da ti gotova stvarčica bude apsolutno kompatibilna, najbolje da koristiš stdcall konvenciju.
[ Crazy Mix @ 08.07.2004. 20:03 ] @
Posto necete konkretan primer da date, moracu da prelistam Mastering Delphi 6, iako vec jesam, al' ne ide pa to ti je...

Inace procitao sam u knjizi da ima razlike izmedju D-a i C-a :)
[ byTer @ 08.07.2004. 20:28 ] @
Fora jeste samo u tim stdcall definicijama koje su kasnije podjednake i za Delphi i za C.
[ Crazy Mix @ 08.07.2004. 21:03 ] @
Hm... ne kapiram. Pisao sam ja delphi dll, samo sa integerima :) i koristio sam stdcall...
[ hwfanatic @ 09.07.2004. 02:41 ] @
Između OP-a i C-a ima isto toliko razlike koliko i između C++ i C-a. :) Inače, OP i C++ su dva konceptualno vrlo slična jezika, i u principu važi pravilo da ako znaš jedan kako valja, mali je problem da naučiš drugi.

Kakav primer želiš?
[ neor @ 09.07.2004. 06:46 ] @
Ako si vec pisao dll za Delphi i koristio stdcall onda nema nista novo za primer.
Samo nemoj unutar dll-a da rezervises i oslobadjas memoriju za parametre nego to prepusti programu koji poziva funkciju u dll-u.
Znaci kao parametar prenosi string (PChar) i koliko si rezervisao mesta za njega pa dll funkcija napuni samo toliko koliko ima mesta a ako joj treba vise neka vrati nekakav kod za gresku. Tako radi vecina Windows API funkcija.

[ Crazy Mix @ 09.07.2004. 12:54 ] @
E... dajte vi primer jedne takve funkcije... :) Znaci svi parametri (cak i povratni) su pchar...