I am trying to port HDF5 to delphi.
The main hindrance are functions that return char * in hdf5dll.dll
After all it is impossible to free that string without access violation, for
example:
member_name := H5Tget_member_name(mem_type_id, i);
FreeMemory(member_name ); //Access violation here
I have avoided that situation compiling hdf5dll with additional function:
Tested under Windows 7, 64bit OS and Windows Virtual PC XP mode.
exe compiled with Embarcadero RAD studio Delphi XE2 edition, 32 bit
application
dll compiled with Visual studio 2010. 32 bit application.
version 1.8.10. Name: hdf5dll_m.dll (m stands for "modified")
No need for msvcr100.dll and msvcp100.dll
zlib.dll and szip.dll (if needed) must be used from original HDF5 software http://www.hdfgroup.org/downloads/index.html
Modifications (to compare with original versions hdf5dll.dll):
Introduced free memory for functions, returning * char
in:
H5public.h