Problem: Getting error "Shared memory conflict."
1: When trying to run two instances of P9 on Win2000.
Versions: P9
Date: 01 Sep 2002
Environment: Win 2000
More information:
see doc issues 78
2: When trying to debug an application, or running 2 BDE applications at the same time
Versions: BDE 3 and higher
Date: 10 May 2005
From: "Adam H." < info at wsd.net .au >
I'm absolutely defeated with this problem. It's one that seems to rear it's ugly head from time to time, and then disappear, but this time it
won't go away.
I have my new machine, and whenever I try to debug an application, or run 2 BDE applications at the same time, I get one of the errors, $3E05
"Cannot load driver" or "Error $251E" = Insufficient shared memory available, or "Error $210D" = Shared Memory Conflict, or Error $2501" =
Insufficient memory for this operation.
I have played with the SharedMemLocation settings until I've almost worn through the keys on my keyboard, but all I seem to do is change
the error from one type to another - but still can never get any success.
Currently, I've tried the following:
- Changing SharedMemSize between 2048, 4096, 8192 and 16384
- Changed SharedMemLocation to 0x2BDE, 0x5BDE, 0x7BDE, 1000, 3000, 7000, 7F00 , 5BDE, 1, 2, and a whole lot more that I care to
mention.
- Changed Local Share between false and true on various settings
- Changed MaxFileHandles between 48 and 96
- Changed the Swapfile on my computer between Windows managed, to custom size and set various sizes between 2048MB, and
4096MB.
- Deleted my .DOF file on my projects and recompiled.
- Reinstalled my BDE. Currently on 5.2.0.2
- Copied the Program Files\Common Files\Borland Shared\BDE directory from another working PC to mine.
- Removed my antivirus software from my PC, and tried running without that.
The computer I'm running on is a P4, on Windows XP SP2, Build 2600, with 3.6ghz processor and 1024MB RAM.
From: "Dominic Dumée" < dominic AT nospam_psas.co.za >
It might be a clash with some device driver. I've had success with this before by disabling the sound driver and/or printer driver and then
trying the different sharedmem locs again until I've found a combination that works.
From: "Adam H."
I have tried disabling my sound driver, and deleting all the HP printers out of my printers list, as I read somewhere in the archives that HP's
could cause a problem, but still no success.
I don't have any local printers connected, only network printers, so I don't have anything to disable in the hardware properties.
Just FYI, I'm on a Toshiba Satellite P30. Don't know if that makes a difference or not.
And, for the heck of it, I installed BDE version 3.5, and 4 before going to 5.0, and back to 5.2.0.2
Versions 3.5 and 4 didn't work, as the app's reported an incorrect engine error, and bde 5.0 did the same as 5.2.
From: "*Lysander*"
Maybe the driver is not there?
Seriously:
I had exactly this problem only very few times, and it always turned out to be a missing or damaged driver file. Or, the specific driver was not
found in the specific location. All of the problems could be tracked down, it always was a mixture of different BDE installations.
Even if YOU installed the BDE only one time on the machine, remember that your application is not the only one which is installing the
BDE.
Here are my 2 favourites:
- Another application is installing an english (or for that matter: german, japanese, whatever) version of the BDE. If this is not done absolutely
clean, you will get a mixture of - for example - idr20007.dll with idr20xxx.dll where xxx stands for a country code AFAIR.
- Another application is installing the BDE into another folder of the system. Typical funny situation is if you have a localized "common files"
name for that system folder. While I am typing, I am looking on my machine and see folders like
"gemeinsame dateien\borland\BDE",
"gemeinsame dateien\Borland Shared\BDE",
"Borland\common files\BDE",
"Borland\common files\BDE",
and (this I like most):
"Borland\common files\BDE\BDE".
and ALL of them seem to contain a full BDE!
While I am sure that I was myself somehow messing this up, I am nevertheless glad that it is ONLY on my developing machine, and not on the
others. Because... IF this is the problem, nothing short of a clean uninstall of the BDE will help you. And that sounds far more easy than it is.
From: "Adam H."
Hi Lysander,
That was a great suggestion! Unfortuantly, it doesn't seem to be the problem in my case.
I only get the 'cannot load driver' error under certain conditions, when I have certain memory ranges, and other times I get the $251E, or
$210D error messages if I have other ranges.
Also - I can load the tables, as long as I don't have another application (or IDE with tables open) operating at the same time.
From: "*Lysander*"
Adam
Just now somebody posted the same problem in the dBase-Newsgroups. This developer has pinned it down to the dependency "who is starting
first, VB or dBase?". The application which is started later get's the error messages that you also described. It also only started after installing SP2
of XP.
Maybe you have 2 different applications running which are both trying to load a *.dll of the same name, but with different functionality? Do
you have a file monitor to check it, like filemon.exe by sysinternals?
From: "Adam H."
Hi André,
Actually, my apps are in Delphi, (Yes, on Windows XP SP2) and running on Paradox tables.
The problem only happened when I had more than one app, or a debugging app, and the IDE, trying to open up paradox tables
simultaneously.
An app by itself could open up many tables, but if I started another app, or the IDE, and opened another connection to a paradox table, it
would fall over. It didn't matter which app I started first.
I'm just glad that the sysflags thing did something for me... if that was infact what did it.
Maybe I just looked at the screen differently when I tried my last settings. It's one of the wierdest problems, and after studying the history in
the NG archives, I think that many people have had the same error message, but due to that many different reasons, it's almost impossible to track
down.
From: "Adam H."
Here's a wierd one. In my despiration to get this to work, I looked at the SYSFLAGS property, which apparently we're not supposed to
change - for internal use only, but I changed it to see what would happen.
The problem disappeared!
I then changed it back to 0, it's original value, expecting the problem to return, but it didn't. No other settings have changed!
Can anyone expalin to me what this sysflags is, or what it's supposed to do?
I changed it from 0 to 1, and then back again.
From: "David R. Robinson" < david AT ibinstall.defined.net.nospam >
That was my experience with this problem too. You could spend hours/weeks/months trying to figure out what was wrong and never figure
it out. Then all of the sudden with no explanation it would disappear.