New BCX Installer Disccussion

Started by MrBcx, March 02, 2024, 06:47:44 PM

Previous topic - Next topic

MrBcx

Quote from: Robert on March 02, 2024, 05:07:53 PM
Just the tickets for the new soon-to-be-released BCX installer. Ahem, um, cough, cough ...

I've made zero progress on this ... real world stuff takes precedence.

If anyone wants to take it on, be my guest.

My current thought is to retire the installer and simply go with a zip file
containing BED, the console demos, the GUI demos, and either Pelles C
or MINGW configured for BED. 

C:\Bed\PellesC\   or C:\Bed\Mingw\
C:\Bed\Con_Demos\
C:\Bed\Gui_Demos\

and the other folders that BED currently uses.

The forum is here to help newbies get to where they want to go with BCX.

airr

#1
First crack at it, using Wix/WixEdit to create a MSI installer.

Configured for PellesC, which is what I have installed at the moment.  Note that I created a "Demos" folder at the root of C:\Bed, and placed Con_Demo/Gui_Demo folders inside.

This doesn't create a desktop shortcut (yet), but does create one in the startup menu.

Let me know if it works for you....the link below is on one of my servers, since it's too large to be attached here.

The source xml I created for Wix is also attached for anyone who might be interested...

AIR.

See: https://bcxbasiccoders.com/smf/index.php?topic=1003.msg5149#msg5149

MrBcx

#2
Thanks for doing this Armando.  Here are my first observations.

I downloaded, unblocked, and ran your installer.

It automatically created a Bed folder on my A: drive ( which is a 4 TB external USB drive )

I loaded Amort.bas from A:\Bed\Demos\Gui_Demo\Amort\

I pressed F5 and told Bed to build a GUI app using Pelles C

It failed
because A:\Bed\Bat\Pelles\Config.bat specified C:\ not A:\

I edited Config.bat and then Amort.exe was created successfully.

It looks like your installer is about 99% perfect.

I have to leave now ... I'll check back in later today. 

Thank you again for helping with this!

airr

I'm assuming you were booted from your A: drive?

Should be a simple fix on my end; just edit the config.bat file so that instead of a hard-coded drive, it uses the windows variable %HOMEDRIVE%.

The config.bat will look like this:

Code (batch) Select
@SET PellesFolder=%HOMEDRIVE%\Bed\PellesC
@SET BCX=%HOMEDRIVE%\Bed\BCX


I'll update the installer soon (probably later this afternoon), at work right now..... ;D

AIR.

MrBcx

Quote from: airr on March 04, 2024, 12:05:22 PM
I'm assuming you were booted from your A: drive?

Nope ... boot device is C:\

A: drive does not have an OS on it.

Robert

Windows 11

My install from my User Downloads folder on C:  installed on D: drive.

User should be able to specify where BCX is installed.

airr

I think I know what's happening.

Wix, by default, will try to install onto the drive that it detects has the most space.

I need to specify that it installs to the system drive.

Or build in logic that will modify the config.bat file if I configure this to allow specifying where the package content is installed.

AIR.

Robert

Somewhere in %USERPROFILE% is probably the best default. It's not write protected.

But really, the user should be able to choose where to install.










airr

#8
Changed the MSI builder I used, link in my original post updated.

Here it is just so it's easier to find.

See: https://bcxbasiccoders.com/smf/index.php?topic=1003.msg5149#msg5149

Still have to work out how to best update the config.bat from the installer, but now you can select where to install (defaults to C:\BED, hopefully!).

I have a rather expensive MSI builder from work, but I'm trying to use something that is readily available at no cost in case someone wants to build the installer themselves.

Attached the AdvancedInstaller configuration for building this (assumes BED folder is located at the root of C:\, easy to change, though).

AIR.

Robert

Nice. Simple straightforward, perfect for a beginner.

Windows 11. Worked for me right out of the box. Used default install to C:\BCX.

Icon on desktop and in Start menu.

Perhaps a ReadMe popup in the editor on first run would be helpful.

Very slick!

MrBcx

Thanks again AIR. I found a new bug to report.

I discovered odd behavior with your updated installer.

When I specify an install folder of C:\BCX

the installer creates C:\BCX

but it also creates (or overwrites if it exists) C:\BED

and C:\BED not C:\BCX is the folder where the installation folders and files get installed.

In other words, the option to specify an installation folder is broken.

If I simply accept C:\BED as the default installation, everything else works great. 


airr

Rats, back to the drawing board!

Robert

Don't forget to register BCXPATH.

Computer\HKEY_CURRENT_USER\Software\Bcx-32

airr

Quote from: Robert on March 05, 2024, 02:09:06 PM
Don't forget to register BCXPATH.

Computer\HKEY_CURRENT_USER\Software\Bcx-32

Is this only referenced from the USER registry, or will it also work if set at the SYSTEM (LOCAL_MACHINE) level?

I'm just about done, using Inno Setup (for some of the features like setting the config file on the fly, AdvancedInstaller requires $$$ and Wix is a beast to configure to do this).

airr

#14
Ignore my previous question, I just configured the installer to create the key in both Current_User and Local_Machine.

Here's the latest, reworked and, as mentioned previously, using Inno Setup.  This version modifies the Pelles Config.bat on the fly, so if installing into a custom location (It defaults to C:\BED), the Config file is set with the correct paths to the PellesC compilier and BCX.

See https://bcxbasiccoders.com/smf/index.php?topic=1003.msg5149#msg5149

Attached is the *.iss file used to generate the installer.

AIR.