Borland IDAPINST.DLL挂起Win10

时间:2015-08-28 10:47:44

标签: database delphi dll paradox

我需要支持在Delphi 7中开发的工具。它使用的是Borland数据库引擎。所以我开发了一个安装工具包,它安装了BDE并使用了IDAPINST DLL函数。

直到Windows 8.1,该工具在英语和德语操作系统中都运行良好。但是在Win 10德语操作系统中,安装时挂起来自IDAPINST DLL的函数调用。

我已经尝试使用appcompat设置基于一些博客中几位专家提供的建议。不幸的是,它没有帮助!!

任何建议几乎都欢迎

示例代码

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;

0 个答案:

没有答案