Главная страница | назад





Article #22584: With an inproc server that uses Sharemem, the caller AV's on exit.

QUESTION:

Why is the caller getting an Access Violation on exit, when I use Sharemem?

ANSWER:

The problem is a call made to borlndmm.dll. The unload sequence on Win95 machines is at fault. The code runs fine on Win98, WinNT4, and Win2K. Linking the following unit will resolve the issue and the DLL does get unloaded.

unit Win95ShareMemFix;

interface

implementation

uses
  Windows, ActiveX, Sysutils;

initialization

  if (Win32Platform = VER_PLATFORM_WIN32_WINDOWS)
      and (Win32MajorVersion = 4) and (Win32MinorVersion <= 0) then
    Win32Check(CoLoadLibrary('borlndmm.dll', true) <> 0);

end.
   

Last Modified: 31-JUL-00