Some back story: Several years (10?) ago I wrote an app that was on a Windows 7 box. It’s been working fine, and the client likes the app. The problem is that the Windows 7 box died (I don’t know the cause of death), and they want to install it on a new Window 11 box.
Apparently, one needs some sort of certificate and/or installer now. I have no clue. Can someone point me in the right direction?
All of my dozen or so apps are primarily for Windows and are currently running on Windows 10. I’ve never done any notarization of any kind - the worst that happens is the user gets a “Do you allow this program to make changes on your computer?” dialog when the installer (created with InnoSetup) runs Ithe dialog may not even show depending on how they have the User Access Control or som such set. I don’t think InnoSetup does anything special either, it primarily just automates the process of keeping the executable with its libs and resources, while also handling stuff like desktop shortcuts, Start Menu items, icons, and so forth.
Windows often throws a warning/error when attempting to run something “unknown.” The trick is to find the ‘more info’ link in the warning, which when clicked will expose the ‘run anyway’ button. Also note that it behaves a bit differently if the computer is not connected to the internet.
just install or unzip+link it for him via TeamViewer or RustDesk.
without app sign (verified producer) a anti virus could possibly nag, but this yould add as exceptional case.
AFAIK, the only use of the GUID is in the “Add/Remove Programs” control panel.
Suppose “My App version 1.2.3” is already installed and the user installs “My App version 1.2.4”. If they use the same GUID then the control panel will treat the new install as a replacement for the old one. If they use different GUIDs then they are treated as separate apps.
If your users should be able to install multiple versions of your app then each version should use its own GUID. If there should only ever be one version installed at a time then use the same GUID.
a lot of things changed in the meantime due to Windows security settings.
Some tip: Avoid request of administrator privileges. Your app should always run with the lowest privileges as possible like simple user.
I put my not signed app in the folder
C:\Users\myname\AppData\Local\appfolder
in this way you avoid any problems. I have also a not signed app in the same folder that I use to autoupdate the main app downloading new versions from my server
You can use C:\Program Files\appfolder but your app must be signed and install must be done with administrator rights. This will be a hassle for every update if you are working from remote. You should always avoid to let the user run with admin privileges
i think apps should not in ProgramData or AppData, that is only shared or data for each user.
it should be i C:\Program Files or C:\Program Files (x86) or better other partition than C:
or start via link from network drive if you care many users.
important data i would store in user documents and not in hidden folders.
It depends if it’s a multi user environment, if you sign the app, if you leave the user run with highest privileges, how and how many updates are performed, if the app should run for every user or single user
I agree it is not theoretically a “correct” location if you’re a purist, but I think I had permissions issues with any other location I tried, and this one Just Works, with zero hassles. With a Start Menu folder and shortcuts managed by InnoSetup, it hardly matters where the app actually lives.