Memory exhausted when exe is bigger than 20MB

This forum is for eXpress++ general support.
Message
Author
Victorio
Posts: 620
Joined: Sun Jan 18, 2015 11:43 am
Location: Slovakia

Memory exhausted when exe is bigger than 20MB

#1 Post by Victorio »

Hi,
yesterday I had again problem with error when compiling my application. After include some new functions exe code was near 20MB.
Break PRG to smaller parts not help. Help only delete some unused functions that was in source by years .
Have somebody Xbase++ exe module bigger than 20MB and work fine ?
Xbase++ workbench break when compiling with error System memory exhausted

User avatar
Tom
Posts: 1165
Joined: Thu Jan 28, 2010 12:59 am
Location: Berlin, Germany

Re: Memory exhausted when exe is bigger than 20MB

#2 Post by Tom »

We do have big EXEs and DLLs (> 60 MB). No problems at all. There was a memory problem with the linker of 1.9 SL1 with Windows 10, and if you still use 1.9, you should get the linker from 2.0, which works well and solves this problem.
Best regards,
Tom

"Did I offend you?"
"No."
"Okay, give me a second chance."

User avatar
Eugene Lutsenko
Posts: 1649
Joined: Sat Feb 04, 2012 2:23 am
Location: Russia, Southern federal district, city of Krasnodar
Contact:

Re: Memory exhausted when exe is bigger than 20MB

#3 Post by Eugene Lutsenko »

Hi, Tom! I started thinking about switching from 1.9 to 2.0. But it costs money. I work as a University Professor. The last time I bought Alaska 1.9 and Express++ through the University (or rather, he bought it) was already in 2012. This was done through a Russian firm that has long been gone. Could you tell me what to buy in Alaska 2.0 and Express++ to smoothly switch from 1.9 to 2.0? how Much will it cost? And how to do this if I live in Russia and the University does not have international payments. I don't have any money for that.
https://kubsau.ru/education/chairs/comp ... taff/3965/
https://kubsu.ru/ru/public-portfolio/39926

Hey, Tom! Ich fing an, über den übergang von 1.9 zu 2.0 nachzudenken. Aber das kostet Geld. Ich arbeite als Professor an der Universität. Das Letzte mal kaufte ich Alaska 1.9 und Express++ durch die Universität (genauer gesagt, er kaufte) bereits im Jahr 2012. Es wurde durch eine russische Firma gemacht, die es schon lange nicht mehr gibt. Könnte mir bitte sagen, dass es notwendig ist, in Alaska 2.0 und Express++ zu kaufen, um nahtlos von 1.9 auf 2.0 zu wechseln? Wie viel wird es Kosten? Und wie man es macht, wenn ich in Russland Lebe und die Universität keine internationalen Zahlungen hat. Und ich habe überhaupt kein Geld dafür.
https://kubsau.ru/education/chairs/comp ... taff/3965/
https://kubsu.ru/ru/public-portfolio/39926
Last edited by Eugene Lutsenko on Wed Nov 04, 2020 1:19 am, edited 1 time in total.

User avatar
Eugene Lutsenko
Posts: 1649
Joined: Sat Feb 04, 2012 2:23 am
Location: Russia, Southern federal district, city of Krasnodar
Contact:

Re: Memory exhausted when exe is bigger than 20MB

#4 Post by Eugene Lutsenko »

Victorio wrote: Wed Nov 04, 2020 12:31 am Hi,
yesterday I had again problem with error when compiling my application. After include some new functions exe code was near 20MB.
Break PRG to smaller parts not help. Help only delete some unused functions that was in source by years .
Have somebody Xbase++ exe module bigger than 20MB and work fine ?
Xbase++ workbench break when compiling with error System memory exhausted
I have the same problem that I discuss in the next topic. My exe module reached about 21 MB and stopped compiling (prg file 127671 lines: http://lc.kubagro.ru/__AIDOS-X.txt).

In addition, it does not work well under Windows 10, settings are required, and still sometimes it does not work. Some notes about the operating system.

In MS Windows 7, the Eidos system simply works without any problems. However, in order for it to work properly in MS Windows 8 and especially MS Windows 10, you need to make some security settings:
0. first of all, configure Windows 10 to allow installation of reliable software not from the Microsoft Store.
1. Enable compatibility mode with MS Windows 7.
2. Disable the protection screen for the "Eidos" system.
3. Enable a weak security level.
4. Give the folder with the "Eidos" system administrator rights.
5. Give the folder with the system "Eidos" rights to write files.
6. The folder with the "Eidos" system should not be located in system folders and folders that have a space or Cyrillic in their names.
7. it is Best when the "Ailos" system is located on a separate disk specially created for it.
8. MS Excel versions from 2003 to 2010 must be installed on the computer.
9. in Addition, to ensure normal operation with cloud Eidos applications, cartographic visualization of places where the Eidos system is launched in the world, you must allow FTP read and write access on the computer.
10. If at startup the file ___START_AIDOS-X.exe if an error occurs, you can try running the system's executable module directly: __AIDOS-X.exe.
11. you can install Windows 7 as a virtual operating system under Windows 10 (on Virtual Box). Then everything will work without the need for other settings.
PS
in General, I believe that the operating system should just run programs for execution, and not fool around and create various problems with it, like MS Windows 10.

Victorio
Posts: 620
Joined: Sun Jan 18, 2015 11:43 am
Location: Slovakia

Re: Memory exhausted when exe is bigger than 20MB

#5 Post by Victorio »

Eugene, thanks for reply, now I see, not only my problem, and it is important, that size of EXE is critical about 20MB.

I work on Windows 10 64bit version and last update and Xbase++ is version 2.0 build 554, that compiler is version Xbase++ (R) Compiler 2.00.554 Sep 29 2014
At this moment I reduced source and can compiling to exe size 19.529MB without error.
When problem occur again , I will try compile in Windows 7 compatible , or on other PC where I still have Windows 7, but its performance is lower than my main computer.

Tom : are you compiling/linking apps on Windows 10 too ? When yes, than can be something wrong in my project file or I use many arrays, variables etc. Also I use eXpress, SQL Express++, Xb2Net dlls.
Or Xbase++ build 554 is too old... ;) but upgrade to last build is too much expensive to me at this moment...

By the way, older problem with run apps when on Windows 10 is set font to 125€ and high resolution, where then EXE not start, this problem still Microsoft have . Screenres.dll module or change resolution to lower and back default still helps.

User avatar
Auge_Ohr
Posts: 1405
Joined: Wed Feb 24, 2010 3:44 pm

Re: Memory exhausted when exe is bigger than 20MB

#6 Post by Auge_Ohr »

hi,

does Xbase++ have a DGROUP :?:

under Cl*pper i have break my PRG into Overlay but still crash
it was my DGROUP which fail.

every Variable which are not declare will be a PRIVAT MEMVAR ... so DGROUP might exceed
greetings by OHR
Jimmy

User avatar
Eugene Lutsenko
Posts: 1649
Joined: Sat Feb 04, 2012 2:23 am
Location: Russia, Southern federal district, city of Krasnodar
Contact:

Re: Memory exhausted when exe is bigger than 20MB

#7 Post by Eugene Lutsenko »

Tom wrote: Wed Nov 04, 2020 12:55 am We do have big EXEs and DLLs (> 60 MB). No problems at all. There was a memory problem with the linker of 1.9 SL1 with Windows 10, and if you still use 1.9, you should get the linker from 2.0, which works well and solves this problem.
How can I get this 2.0 linker? Will it work with source code written in Alaska 1.9 + Express++?

User avatar
rdonnay
Site Admin
Posts: 4722
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Re: Memory exhausted when exe is bigger than 20MB

#8 Post by rdonnay »

does Xbase++ have a DGROUP
DGROUP was an area of memory that was never swapped out in 16 bit applications.
Xbase++ does not have that, however it may have a limit on the size of the symbol table.

You should use Private and Local variables whereever possible.

Also use STATIC functions where possible.
The eXpress train is coming - and it has more cars.

skiman
Posts: 1183
Joined: Thu Jan 28, 2010 1:22 am
Location: Sijsele, Belgium
Contact:

Re: Memory exhausted when exe is bigger than 20MB

#9 Post by skiman »

Hi,

Our application is currently an EXE of 65Mb. So I don't think the 20Mb. is a limit. The source code is divided in about 20 PRG files. I'm using 1.9 and Windows 10. I don't have any problems to compile.
Best regards,

Chris.
www.aboservice.be

User avatar
Tom
Posts: 1165
Joined: Thu Jan 28, 2010 12:59 am
Location: Berlin, Germany

Re: Memory exhausted when exe is bigger than 20MB

#10 Post by Tom »

So I don't think the 20Mb.
We also have much bigger EXEs, so it must be something in the source code creating memory consumption during the compilation, like huge string constants, tons of vars or whatever. Take your problem to Alaska, Victorio!
Best regards,
Tom

"Did I offend you?"
"No."
"Okay, give me a second chance."

Post Reply