|
Post by xxgeek on Sept 4, 2023 21:32:55 GMT -5
Just saying it would be a bonus if we could make the EXE files using code, instead of the manual method in the IDE.
It would take the labor out of making the single exe file if we could just code a function to do it with a single click folderdialog selection.
|
|
|
Post by atomose on Sept 6, 2023 10:51:48 GMT -5
yes this is a nice option for software/game maker. I use innosetup 6.2.2 for .exe installer and i use enigmavb 10.40 for have a unique .exe with all files/folders/pictures into this .exe you should try it
|
|
|
Post by Rod on Sept 6, 2023 14:30:21 GMT -5
Sigh…. this has been discussed more than once. Yet we discuss two things. Xxgeek is discussing automating the creation of a folder containing all we need to run a bas file as an apparent .exe. In reality we are running the Liberty runtime .exe renamed as the .tkn it will find and run.
This means folks who know nothing about Liberty can copy the folder to their PC and click on the .exe which will find and run the .tkn of the same name. Thus folks who know nothing of Liberty can run your .bas programs.
Atmose is discussing wrapping all these files in a different type of .exe which is in fact a wrapper that exists as a single .exe but when run temporarily creates all of the files needed to run your .bas. On closing all these temporary files are deleted and you are left with the single .exe file.
In both case while the .bas is running the STANDARD suite of Liberty files are created and active on the PC
So I sometimes wonder what the point of all the complexity and complication is. By far the easiest way to share code is to share .bas and ask the user to load Liberty. Sometimes if you actually have a program to distribute to multiple non Liberty users then the folder option with the renamed runtime and .tkn is simple. If you want to look ultra posh use the wrapper but be prepared to put some effort into creating it.
Me? .bas and the required resources in a .zip has served me well.
|
|
|
Post by xxgeek on Sept 6, 2023 16:31:54 GMT -5
I've made a mistake about the Liberty Pro EXE file creation. I had assumed it was a single .exe file. It is NOT, it is mearly a renamed run451.exe along side the dll's, sll's, and created .tkn file in a folder.
There is no need for an installer, we can install with code anywhere we want. I've already proved that with BAS2EXE by installing to the %appdata% dir of the user. A little trick I figured out while learning JB.
Assuming Pro creates a single EXE file, I was hoping/wishing the next version of Pro would allow command line acess to the process.
Main reason was to stop the LB IDE opening when creating the TKN, so one last request on the matter.
Please fix the -M switch of the lbpro.exe command line so we can at least minimize the IDE when creating TKN files from command line. A hide switch would be even nicer if that could be managed.
I can make single exe files using IEXPRESS command features, but those EXE files open in a 'temp' dir, and when those exe's are RUN/executed, they delete their files on exit, so if the app saves files in DefaultDir$, they are gone too. I will either have to write scripts in another language to create 'single exe files, or use the tricks I've learned to just install the Folder with all the dependent files and folders of the apps.
Thanks for the responses, sorry about any confusion my assumption caused.
|
|
|
Post by Rod on Sept 7, 2023 1:06:15 GMT -5
Working from memory and will need to test, but if you create a .tkn that has no need of mainwin then all you see is the program window. The IDE is never seen.
Edit, yes use nomainwin to show only your program window.
|
|
|
Post by xxgeek on Sept 7, 2023 7:35:18 GMT -5
Working from memory and will need to test, but if you create a .tkn that has no need of mainwin then all you see is the program window. The IDE is never seen. Edit, yes use nomainwin to show only your program window. Excellent, could you post the command line that creates the tkn without opening the IDE. I've been trying for almost 2 years now, thanks.
|
|
|
Post by Rod on Sept 7, 2023 13:32:13 GMT -5
Well a program can disappear completely with an end statement, especially if it is structured as a nomainwin.exe So is the question more about an automated compile to .tkn. You can’t compile to .bas without the ide and so you probably can’t compile to .tkn without the ide in both cases to catch errors. So do we need the ide for the .bas creation, for the .tkn creation, or neither?
I am just trying to understand why elimination of the ide matters. It may very well matter but since I have it open anyway to create my .bas and create my .tkn I wonder why it needs hidden for automatic creation.
|
|
|
Post by xxgeek on Sept 7, 2023 16:10:47 GMT -5
During the automation of the TKN creation it would be nice to NOT see the IDE if possible.
Personally, I don't want to see it every time I create a TKN (automated). I created a LOT of them, constantly experimenting with code. I would like the option of creating TKN files silently. Select a .bas, and I'm done. A few seconds later, I have a single EXE using IEXPRESS command line. (not a true EXE, but as mentioned 'wrapped' and in a temp dir when Executed, to be deleted when closed.)
As you know, the EXE is useless without the TKN, and support dll's, sll's.
I can (here on my own machine) effectively hide the "Save as " dialog, and the "Information" window when a TKN is created, and saved by writing/running some fancy VB code, and fine tuned timers. So I see nothing on most runs, others I'll see one of those windows flash for a ms or 2.
If the -M switch of the lbpro.exe command line worked as advertised all would be good. However, it does not. All I was asking, was for it to be fixed in the next edition, or maybe even add a -H (hide) switch.
For now, I have a 3rd party app created for LB that can do the job, and it has a -M switch that DOES work, and it rounds up all the support files for me too, but I would much rather be 3rd party free. I don't want any of my apps to depend on other files. If it's not built into Windows, or LB, I'll make it myself, have my code make it, or do without.
Since were on the topic of improvements, there is also a sound created when the "Save as" dialog is sent a return when creating the TKN. I usually turn my speakers off so I don't have to hear it blast my ear drums every time a TKN is created. It would be nice to do away with that sound too.
This was not about installers etc. Basic JB and LB code can do that on their own.
|
|
|
Post by Brandon Parker on Sept 10, 2023 15:11:07 GMT -5
xxgeek, The -M switch has been a longstanding issue and I suppose Carl just never got around to fixing it in LB 4.x.y. I too would love to have it fixed (as well as the sound you mentioned) since my Import Architect would benefit from both. I think Rod might just be slightly confused about what you are talking about... {:0) Brandon Parker
|
|
|
Post by xxgeek on Sept 12, 2023 7:45:19 GMT -5
Brandon, I spent some time yesterday looking for this Import Architect of yours and downloaded a TKN file. Could you point me to some info as to what it is and what it does?
|
|
|
Post by Brandon Parker on Sept 12, 2023 22:13:15 GMT -5
Sure... Here is a thread on this forum that might interest you. Dynamic Array library for Liberty BASICMeet me over at the forum... Import Architect ReadMe FileIt started off as just a tool to import many files/modules and then get LB to compile them, but things have definitely moved on from just that. It also has some dedicated functionality with my Dynamic Array Library as well. I am sure some of the features need better documentation. If you need something that is not available, hit me up on the Import Architect Forum. {:0) Brandon Parker
|
|