PChar verweist in D2009 auf PWideChar. Also solange deine
DLL die Daten im
Ansi-Format erwartet, mußt du diese als PAnsiChar übergeben.
file_id := H5Fopen(PAnsiChar(AnsiString(OpenDialog1.Files[0])), H5F_ACC_RDWR, H5P_DEFAULT);
function H5Fopen(filename: PAnsiChar; flags: Cardinal; access_plist: hid_t): hid_t; stdcall external 'hdf5dll3dr.dll' index 62;
Besser wäre es natürlich, wenn die
dll auch eine Wide-Funktion hätte, damit du die gesamten Vorteile von
Unicode nutzen kannst.