Hi Mindaugas,

But I still have not got any answer or idea about using other dlls like ace32, freeimage, zlib, mysql, curl, etc. According to your logic we must drop using it, but we use it with success. And things will not be clear until we will not understand the reasons, why other dlls are "general puporse".

It seemd a very important question to me too. The only answer seems
to be that dll boundaries are not crossed. And it seems harbour.dll
also fills this requirement - all operations on Harbour internals are
done inside/thru harbour.dll.

I have nothing against user possibility to compile .dll with native compiler. Actually, I vote for it, but if harbour.dll will ever be used as a "Harbour language implementation library" users will want to have Harbour.dll and harbour.h, and do function call without limitation on their compiler - MSVC, GCC, Borland C, VisualBasic, Delphi, Pascal or assembler. That's where, I see a problem of "general puporse harbour.dll".

I've spent last two hours playing with dlls and it seems there in no
problem in using dll created by one compiler and used by another one.
CRTL (even dynamic) is not a problem as long as dll boundaries are
not crossed. I was wrong in regard to dynamic CRTL problem. Sorry for
bringing it up unnecesary.

Either Borland harbour.dll works with Harbour compiled with MSVC, or
MSVC harbour.dll works with Harbour compiled with Borland. The only
problem is that those two dlls are not compatible, thus not interchangable.
AFAIK.
I didn't find a way to make them compatible/interchangable. Maybe due to
a lack of knowledge ...

It seems to me all problems with calling convensions, name handling, etc,
are properly handled during a proper generation of import library. Each
import program seems to solve most problems automaticly - and generated
import libraries properly hide differences between dlls.

But since dlls are not interchangable (I cannot overwrite one with the
other one) - I am still against renaming them to one common name -
harbour.dll.

Imagine what happens if one installer program installs harbour.dll in a
system dir and then another one installs Borland harbour.dll in a system
dir too.

Do you have any kind of solution which would solve this problem in an
elegant way ? ( to convince me to harbour.dll name ? ;-) )

--

Marek



----------------------------------------------------------------------
Pogoda na dzis.
Sprawdz >>> http://link.interia.pl/f1e42

_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to