I'm using V5.01 of the BDE (The BDEAdministrator help|about box says
version 5.01, but the version number under "INIT" is 4.0 - does this
matter?)
You can contact me at will...@encorp.com
the SHAREDMEMSIZE setting in the BDE may solve your problem. This
setting will allow you to increase the BDE's internal object memory
pool. A setting between 4096 and 8192 should be good.
--
Brian Bushay (TeamB)
Bbu...@NMPLS.com
My system is NT 4.0 Workstation (450 mhz , 128 Megs Ram, ) on NT Server
Network.
Team B, please find us an answer! If there is no cure then D4 is not ready
for big apps.
David
Arie Willenbrecht wrote in message <369552D3...@encorp.com>...
>When I start a second application that uses the BDE, I get a BDE
>initialization error $2501. I realize this is a low memory error, and
>have tried increasing some of the "INIT" memory settings - with no
>luck. Any ideas?
>
I have the same exact problem that Arie has. I did bump up the
SHAREDMEMSIZE to 8192 and gave it another try. Now I get BDE error 210D
(Shared Memory Conflict). What next? In the BDE config the
SHAREDMEMLOCATION field is left blank (the default). I don't know if that
could be a problem or not.
The system is NT 4.0 Workstation, sp4, 128 Megs RAM, running on NT Server
4.0, sp4 network. Now, I did upgrade to the BDE 5.01 but did not uninstall
the original version first. Could that possibly be related to the problem?
Help!
David Farrell-Garcia
Orca Software
>> the SHAREDMEMSIZE setting in the BDE may solve your problem. This
>> setting will allow you to increase the BDE's internal object
memory
>> pool. A setting between 4096 and 8192 should be good.
>>
Under Win95 or Win98 all work perfectly.
Team B, please, help us !!
Arie Willenbrecht escreveu na mensagem
<36961B1E...@encorp.com>...
>I've tried increasing SHAREDMEMSIZE, and I've tried increasing almost
all the
>memory settings. I've turned LOCAL SHARE on, and I've tried setting
SHAREDMEM
>LOCATION to some different values. I can't find any combination of
INIT settings
>to solve this problem. I am using Win NT. Help!!
>
>Brian Bushay TeamB wrote:
>
>> >When I start a second application that uses the BDE, I get a BDE
>> >initialization error $2501. I realize this is a low memory error,
and
>> >have tried increasing some of the "INIT" memory settings - with no
>> >luck. Any ideas?
>>
>I have the same exact problem that Arie has. I did bump up the
>SHAREDMEMSIZE to 8192 and gave it another try. Now I get BDE error 210D
>(Shared Memory Conflict). What next? In the BDE config the
>SHAREDMEMLOCATION field is left blank (the default). I don't know if that
>could be a problem or not.
SharedMemLocation might have an effect. Try some of the other settings
Also what happens when you decreese SharedmemSize?
>
>The system is NT 4.0 Workstation, sp4, 128 Megs RAM, running on NT Server
>4.0, sp4 network. Now, I did upgrade to the BDE 5.01 but did not uninstall
>the original version first. Could that possibly be related to the problem?
No
Can you give me any better information on how to reproduce this error?
>Team B, please find us an answer! If there is no cure then D4 is not ready
>for big apps.
> I have the same exact problem. I get the same error many times when trying
> to run a second application. This is a disaster since my application is
> built on a front interface module with 13 additional module applications. I
How do you open those modules, in a separate threads, through
ShellExecute or are you using some other methods?
Where does your NET file resides? What about your private dir? Do they
point to the local directory?
How many sessions are you using?
What database are you using?
--
Miha Remec
Each Module is a separte .exe. They are opened from the Main form of my
controll application with the following procedure: (Note: No additional
threads used)
procedure TfrmMainMenu.ModuleClick(Sender: TObject);
var
which : TModule;
cmdLine : string;
hwndTarget : HWND;
szTemp : array[0..255] of char;
begin
which := TModule((Sender as TComponent).Tag);
hwndTarget := ModuleHandle(which);
if hwndTarget = 0 then
begin
cmdLine := aFILE_NAME[which] + ' ' + UserLevel + ' ' + UserName;
StrPCopy(szTemp, cmdLine);
if WinExec(Addr(szTemp), SW_SHOW) = 2 then { file not found }
begin
cmdLine := aFILE_PATH[which] + ' ' + UserLevel + ' ' + UserName;
StrPCopy(szTemp, cmdLine);
WinExec(Addr(szTemp), SW_SHOW);
end;
end
else
begin
SetActiveWindow(hwndTarget);
if IsIconic(hwndTarget) then
SendMessage(hwndTarget, WM_SYSCOMMAND, SC_RESTORE, 0);
end;
>
>Where does your NET file resides? What about your private dir? Do they
>point to the local directory?
using Dbase. No Net File/ Private dir required
>
>How many sessions are you using?
Only the default single session
This application runs perfectly under D1/BDE 2.52 and D3/BDE 4.51
I get BDE Error (Shared Memory Conflict). The interesting thing is that it
is not consistent. I get that error 95% of the time then inexplicably it
will start working. I will start getting giddy with excitement and then
boom, back to the same. Rebooting seems not to make a difference.
Thanks
David
The difficulty in finding this problem is that that stepping thru the code
in the debugger does no good as it stops at the end of procedure (not always
the same one) and does not allow me to continue stepping. That leads me to
speculate the problem is outside Delphi itself.
Finally I have some consistency that I hope may shed some light:
If I reboot and immediatly try to start the App, I get the error (BDE Shared
Memory Conflict) when I try to open most of the applications from the Main
application. Interesting enough it is always the same applications that
have the problem, although each main form of each application is almost
identical. What is repeatable is that if I open Delphi first and then run
the Main Application, outside the debugger, leaving Delphi minimized, it
works! I can click on the Tool bar and each and every application executes.
If I close them, and then close Delphi and then try to run the applications
, without Delphi running, I get the error again. I have been able to repeat
this every time.
It does not make any difference, as far as I can tell , if the runtime
librariers are dynamically or statically linked. What factor could make a
difference if Delphi itself is running? What is being loaded in memory when
Delphi runs that my applicaiton is sharing and why can't it fire it up on
its on witout a kickstart from the Delphi first? If anyone has an idea I am
all ears.
David
David
I ran my application from another node on the network that has the BDE 4.51
and it ran fine, so it would appear that the problem is in the BDE 5.0+
somewhere. I don't know what other settings to try.
I currently have the defalult settings with the following exceptions:
DEFAULT DRIVER: DBase
SHAREDMEMSIZE : 8192
MAXFILEHANDLES: 100
Any suggestions will be greatly appreciated.
David
>It does not make any difference, as far as I can tell , if the runtime
>librariers are dynamically or statically linked. What factor could make a
>difference if Delphi itself is running? What is being loaded in memory when
>Delphi runs that my applicaiton is sharing and why can't it fire it up on
>its on witout a kickstart from the Delphi first? If anyone has an idea I am
>all ears.
The only thing that I can think of is that Delphi is yet another
application using the BDE. So now Delphi is the first app to use the
BDE, your first app is the second and so on...
This problem clearly seems memory related to me. Whether it's a bug,
or a configuration issue is unclear to me. Does your main application
use the BDE?
Jan
--
Brian Bushay (TeamB)
Bbu...@NMPLS.com
The applicaton will run from another node on the network, referencing the
files on this machine, but will not run properly on this machine. I have
even removed and reinstalled D4 to no avail. I suppose I could reinstall NT
but that seems kind of drastic unless I do not find the answer. I want to
find it because if this happens on one of my clients systems I want to have
the answer.
Thanks for your input.
David
Jan Sprengers wrote in message <36a9911c...@forums.inprise.com>...
It seems specific to this machine as I can open the apps on this node from
another workstation and they run fine. weird. I know there is an answer
and I am sure it will be a simple solution once found. Do you have any idea
what file Delphi loads that my application would be sharing? If I start
Delphi first and then close it after opening my application it will still
work but Delphi has to kickstart it first for some reason.
Thanks
David
I am also using NT. Are you using NT sr4?
David
Marcio C. Santos wrote in message <788dha$h4...@forums.borland.com>...
>I have the same problem and I don't know if anyone already tested, but
>this problem only happens on Windows NT.
>
>Under Win95 or Win98 all work perfectly.
>
>Team B, please, help us !!
>
>
>Arie Willenbrecht escreveu na mensagem
><36961B1E...@encorp.com>...
>>I've tried increasing SHAREDMEMSIZE, and I've tried increasing almost
>all the
>>memory settings. I've turned LOCAL SHARE on, and I've tried setting
>SHAREDMEM
>>LOCATION to some different values. I can't find any combination of
>INIT settings
>>to solve this problem. I am using Win NT. Help!!
>>
>>Brian Bushay TeamB wrote:
>>
>>> >When I start a second application that uses the BDE, I get a BDE
>>> >initialization error $2501. I realize this is a low memory error,
>and
>>> >have tried increasing some of the "INIT" memory settings - with no
>>> >luck. Any ideas?
>>>
>>> the SHAREDMEMSIZE setting in the BDE may solve your problem. This
>>> setting will allow you to increase the BDE's internal
>object memory
>>> pool. A setting between 4096 and 8192 should be good.
>>>
David Farrell-Garcia escreveu na mensagem
<78dmiq$md...@forums.borland.com>...
Just a guess but you might try adding Sharemem to the USES of your application
so that BORLANDMM.DLL is loaded.
Thanks for your continued fast reponse. I will try that and report the
results. I have about 3 or 4 others who have emailed me privately that
share the same problem. All are using NT 4.0. The next step, if you
suggestion does not work, would be for me to contact each one of them and
see what we have in common as far as 3rd party libraries, NT service pack
version etc.
I did try one other thing yesterday with disappointing results. I installed
a fresh copy of NT 4.0 with sp4 to a separate partition. I installed D4,
without actually loading my 3rd party packages and just ran the application
again. It failed on all modules this time not just 7 out of 10. The main
module did open ok with no errors.
If all else fails, I will load my 3rd party packages one by one into Delphi
and try again after each one is installed to see if there is any
correlation. I do not use very many of them, but I am starting to look in
that direction because I have to actually have one of the projects in my
application set open before it will work. ie, I can not just fire up Delphi
and leave it at an empty blank project. I actually have to load one of the
projects in my applciation set to get it to work.
Still the most confusing part is that the applications run fine on two other
machines on the network. One is running Delphi 3 BDE 4.51 locally. The
other is running D4 from an application server with D4 and the BDE 5.01
loaded on the server. I did notice on that machine that the default Dbase
driver was different then the default that installs by default with D4.
Since this may affect others then just myself, I will post the results.
Thanks again.
David
Brian Bushay TeamB wrote in message <36b18a51.35685674@floyd>...
I tried adding ShareMem to the uses clause. Per instructions in the Help
File I made it the first unit in the uses section. It did not work. In
fact I got a runtime error (216) until I removed it. I can still
consistently run the applications if one of the projects is loaded into
Delphi (with the main form visible!), but it will always fail when Delphi is
not started. It still does work on the other network node. I compared the
two BDE config files and made sure that they were the same. there was not
much difference except for a different default dBase driver, so I made the
trouble machine match the one that was working. One thing that is different
is the VERSION field in the config. On the machine that is working says
Version 1.0. On the machine that is not working it says 4.0. What gives
there? Both were a fresh install of Delphi 4. The one that does work was
installed differently, however. I installed it, applicaiton, BDE and all,
to the server and run it from the workstation. That one works fine.
I can absolutely guarantee that it will run if one of the applications is
loaded in Delphi and I run it outside the debugger. That has not changed.
By the way, it does have to be one of the applications in the master
project. Using a blank project does not work. Where do I go from here? Do
you think I will have any better luck calling Inprise techncial support. I
hate to resort to that since the success rate has not been that good for me
over the years.
Thanks again.
David
Brian Bushay TeamB wrote in message <36b18a51.35685674@floyd>...
>dBase driver, so I made the
>trouble machine match the one that was working. One thing that is different
>is the VERSION field in the config. On the machine that is working says
>Version 1.0. On the machine that is not working it says 4.0. What gives
>there?
I do not know what if anything this field is used for. The anomily in version
numbers has been pointed out before but I have never know it to cause a problem.
>I can absolutely guarantee that it will run if one of the applications is
>loaded in Delphi and I run it outside the debugger. That has not changed.
>By the way, it does have to be one of the applications in the master
>project. Using a blank project does not work. Where do I go from here? Do
>you think I will have any better luck calling Inprise techncial support. I
>hate to resort to that since the success rate has not been that good for me
>over the years.
Frankly I think this will be a very difficult problem to solve for anyone that
can not reproduce it.
You would have to have several large database applicaitons and run them from
a main application, all of which include TDatabase components on the Main
form. The details I described about having to run Delphi in the background
to get them to run, was acknowledged by others as well. They also stated
that it appears to be machine specific. A couple only had one machine so
could no verify that. We have been comparing systems, other software
installed, OS and sp #, and specifics of the applications themselves to try
to find a common thread.
Here is what we found so far:
1. The problem is consistent. We can repeat it on demand at any time.
2. We are all using NT 4.0 Workstation sp3 or sp4
3. We are all using Delphi 4 sp2
4. We are all using BDE 5.0+
5. At least one of us (me) has tried it on the same machine on a clean
install of NT with nothing but D4 installed.
6. We get BDE Errror 250D when we try to run the 2nd applicaiton. which is
SHARED MEMORY CONFLICT. a couple of the developers are getting BDE Error
2501 (INSUFFECIENT MEMORY) and I did too, until I bumped up the BDE
SHAREDMEMSIZE and now we get the 250D error.
7. two of the developers have modified the SHAREDMEMLOCATION to know
affect. I am not sure how to modify that field properly so have not tried
that.
8. I can run the same compiled files on other machines with either D4 or D3
installed and BDE 4.51 and BDE5.01 respectively. Others have found similar
results. One odd thing I noticed was that even though both D4 installs were
all installed with the Defaults, the one that does not run properly shows
version 4 on the BDE Admin system page and the one that works says verson 1
(I am not sure what that is about). The .dlls are all identical in date and
size.
9. If I start Data Base desktop first, and then try to start my first, we
get the same error!
10. At least two of us, perhaps more, have recently upgraded to Infopowers
latest componets for D4 and use them extensively in our apps. At least two
other developers do not use infopower and we do not share any other 3rd
party components in common. We have also posted to their newsgroup.
The last thing I know to do is to install Win98 to another partition on the
same macnine that is giving me the trouble and then run the application
there to compare the rusults. I want to find out, of course if it is also
OS independent or hardware(???) .
So, while it cetainly appears difficult for me to expect just anybody to be
able to duplicate this error, there has to be somone out there in Inprise or
TeamB land that knows what factors could possibly cause such a conflict. I
will then do my own testing to eliminate or prove them one by one. I just
need to list since I am almost at the end of mine.
Thanks again for our reply.
David
DBIERR_RECLOCKLIMIT = (ERRBASE_LIMIT + ERRCODE_RECLOCKLIMIT);
Does this shed any light on the situation ???
>So, while it cetainly appears difficult for me to expect just anybody to be
>able to duplicate this error, there has to be somone out there in Inprise or
>TeamB land that knows what factors could possibly cause such a conflict.
Maybe but I don't have access to all the resources at Inprise
>You would have to have several large database applicaitons and run them from
>a main application, all of which include TDatabase components on the Main
>form.
Can you do a better job explaining this?
do you not have a problem when running these applications separately on the same
machine?
Brian
I wish it was that simple. Inprise does have an older bulletin on this
problem since BDE 3.x but the solution does not work. They sugges changing
the SHAREDMEMLOCATION to a different value in a certain range. All of the
developers I have been in contact with that have this problem have tried
this but it did not make a difference with BDE 5,0+
Thanks again for your input
David
sandrews wrote in message <36B09A75...@ohiotime.com>...
>I looked into the BDE.INT source code file and found:
> ERRBASE_LIMIT = $2500; { Resource or Limit error }
> ERRCODE_RECLOCKLIMIT = 13; { 0x0d Too many record locks on table }
>
> DBIERR_RECLOCKLIMIT = (ERRBASE_LIMIT + ERRCODE_RECLOCKLIMIT);
>
>Does this shed any light on the situation ???
>
>
>David Farrell-Garcia wrote:
>
>> You think? No doubt but I am not alone. I have several that have
emailed
>> me from my posting on this and other news groups who have the exact same
>> problem. So, although it may seem that it affects only a small group of
>> developers, I doubt that is the case.
>>
>> You would have to have several large database applicaitons and run them
from
>> a main application, all of which include TDatabase components on the Main
>> So, while it cetainly appears difficult for me to expect just anybody to
be
>> able to duplicate this error, there has to be somone out there in Inprise
or
>> TeamB land that knows what factors could possibly cause such a conflict.
I am sure.
>do you not have a problem when running these applications separately on the
same
>machine?
>
Yes, there is no problem running each of the applicaitons by iteself, on
this same machine, unless another BDE application, including Database
Desktop is loaded. Only running Delphi 4 itself, running in the background,
allows me to open multiple BDE based applications.
He said that they had 3 NT workstations with the Creative Labs Soundblaster
LIVE sound card. When he removed the drivers all his database applications
ran well. That hit me like a jolt because I also have that card on the
only machine on my network that has this problem. I removed the drivers
today and it worked!
I suggest that all others experiencing this problem do the same.
I posted this to every relevant newsgroup I could find in all 3 languages I
happen to know to find the person with the answer. Many thanks to Peter
Kormann from Germany.
David
Orca Software
I tried several values, until I found one that solves the problem. In
my case it is :
SharedMemoryLocation : 0x5BDE
SharedMemorySize : 4096
But I have Creative Labs driver installed and now I'm curious. I'll
try to remove the driver and set the BDE configurations to default and
see if the problem happens...
I'll let you know...
David Farrell-Garcia escreveu na mensagem
<7909kc$a4...@forums.borland.com>...
David
Marcio C. Santos wrote in message <79710p$fs...@forums.borland.com>...
That was great information. The same address worked for me. I kept trying
numerous addresses but gave up after a dozen attempts. I think that it is
ironic that the one that works contains "BDE"!
Thanks again. I can keep my sound card!
http://www.dejanews.com/home_ps.shtml
The finally found a memory address that fixed my problem: Here a snippet of
the post:
I finally found the right combination to keep my sound card and still
use the BDE. It was ironic that the only SHAREDMEMLOCATION that would work
is 0x5BDE. (amazing that it contains BDE). Write that number down because
guess what, It also is a problem with Delphi 3 if you upgrade to new BDE.
And the Sound Blaster Live card is not the ONLY one that interferes but it
is the most common. I gave out that address to 3 others who had not yet
yanked their sound card and it worked for all of them.