John Kouraklis 94 Posted February 18, 2022 Hi everyone, I'd like to ask for ideas on how to manage the following situation. I've got an app free for personal use. The corporate use is paid however and it adds some features but also allows the organisation to brand it (e.g., add a logo, color themes, etc.). What I find a heavy administrative task is how to manage the paid version. There are a couple of scenarios I am considering: 1. They send me their logo and I create org-specific binaries or installers. The downside is that I need to keep track of numerous editions and update files, etc. 2. They are able to unlock the app and load the logo and the theme. Then, they distribute it to their employees. A question here is how will they distribute the branded version. Do they need to repackage it in an installer? I also thought of having the exe or installer alter an embedded resource but doesn't sound a good idea to me. And, how will the updates be distributed? 3. I thought of setting up a website whether they upload their files and it produces the new installer. But this needs a proper build server in the background. Too complicated What do you think? There must be a simpler way, isn't there? Thanks Share this post Link to post
Vandrovnik 215 Posted February 18, 2022 Hello, Inno Setup is able to take a file which is out of the setup.exe and install it, so if they can distribute more then just one file, they can put logo.jpg etc. in the same directory (or a subdirectory, as in my example) and install would find it there. [Files] Source: "{src}\Licence\*.*"; DestDir: "{app}\Bin"; Flags: external comparetimestamp; Components: Licence 1 Share this post Link to post
corneliusdavid 220 Posted February 18, 2022 A few other pieces of information might be handy to make a good decision. If there are just a few of these corporate customers and the only branding is the logo, getting the logo and building a custom install from your compiled application would be relatively simple to manage--I've done something similar to this. And yes, like @Vandrovnik mentioned, InnoSetup is great for this--either for you embedding a custom logo or with them supplying a logo with the right name and size in the right location so the installer can find it. But if your customers want to do a lot more than just the logo, like customize some labels or options or set colors and distribute a whole "themed" application, then I would suggest building a theme packager (could be as simple as zipping some files) and making it simple for them to create a theme and package it for their own distribution. Your installer would have to look for a theme package and apply it and you'd deploy a basic theme. My experience with any sort of theme or customization is that there will always be little changes here and there after it's "done" and you don't want manage all those for all the customers, so giving your customers the ability to mange those for themselves would be highly preferable. In any case, you want your base application the same between paid and free if at all possible, and some sort of long, encrypted license key or something that unlocks the full power for the paid version. Share this post Link to post
John Kouraklis 94 Posted February 19, 2022 Thanks @corneliusdavid and @Vandrovnik 16 hours ago, corneliusdavid said: A few other pieces of information might be handy to make a good decision. If there are just a few of these corporate customers and the only branding is the logo, getting the logo and building a custom install from your compiled application would be relatively simple to manage--I've done something similar to this. And yes, like @Vandrovnik mentioned, InnoSetup is great for this--either for you embedding a custom logo or with them supplying a logo with the right name and size in the right location so the installer can find it. Yes, this is a solution but it means that the app needs to enter the typical "corporate" IT world where the IT prepares an update and then distributes it to the employees 16 hours ago, corneliusdavid said: But if your customers want to do a lot more than just the logo, like customize some labels or options or set colors and distribute a whole "themed" application, then I would suggest building a theme packager (could be as simple as zipping some files) and making it simple for them to create a theme and package it for their own distribution. Your installer would have to look for a theme package and apply it and you'd deploy a basic theme. Not at the moment. I have a built in theme manager but it is not included in this case. So, it's only about a logo and some additional functionality. 16 hours ago, corneliusdavid said: My experience with any sort of theme or customization is that there will always be little changes here and there after it's "done" and you don't want manage all those for all the customers, so giving your customers the ability to mange those for themselves would be highly preferable. In any case, you want your base application the same between paid and free if at all possible, and some sort of long, encrypted license key or something that unlocks the full power for the paid version. I am also a bit torn between having one app with a license key that unlocks more features and having a separate build with IFDEFs. As mentioned in the initial post, I am also considering embedding the logo in an exe resource but I am sure I will need to produce a mac version in the near future. Is there something similar on macOS? Share this post Link to post
corneliusdavid 220 Posted February 20, 2022 On 2/19/2022 at 4:42 AM, John Kouraklis said: Is there something similar on macOS? I have less experience on the Mac but each app deployed has several sub-folders with different supporting parts like libraries and resources, so with a little study, this should be quite doable. Share this post Link to post