I need to give support to a tool developed in Delphi 7. It is using Borland database engine. So i developed a installation kit which installs BDE and uses IDAPINST DLL functions.
Till Windows 8.1, the tool was running perfectly in both the English and German OS. But in Win 10 German OS, the installation hanging when the function from IDAPINST DLL called.
I already tried to use the appcompat settings bases on suggestions given by few experts in some blogs. unfortunately, it didn't help!!
Any suggestions almost welcome
sample code
procedure TForm1.Button1Click(Sender: TObject);
type
T95IntlProc = procedure(pszCfgFile: pChar;blIdapi16: Integer;sLang: pChar); stdcall;
zString = array[0..255] of Char;
Var
hLib: THandle;
IntlProc95: T95IntlProc;
z1,z2: zString;
begin
Try
hLib := LoadLibrary('IDAPINST.DLL');
if hLib = 0 then raise Exception.Create('unable to load idapiinst dll');
StrPCopy(z1,'C:\Borland\Common Files\BDE\idapi32.cnf');
StrPCopy(z2,'0009');
Showmessage('GET IntlConfig ProcAddr');
IntlProc95 := T95IntlProc(GetProcAddress(hLib,'IntlConfig'));
Showmessage('CallDLL_IntlConfig started');
{** MY code hanging in the below method **}
IntlProc95(z1, 0, z2);
Showmessage('CallDLL_IntlConfig called');
Finally
FreeLibrary(hLib);
End ;
end;