Hi
@DragonRand . I say the following as a person who was a developer in Clipper (similar to Foxpro or dBase) back in 1990, 30 plus years ago, on a DOS and Netware OS, before Windows. But, I've also been a Windows user ever since it came into existence up through Windows 7, as have many here. I consider myself a prosumer, but don't have specific expertise about the scenario you mention. But, my general knowledge might be useful. So, here are some random thoughts which might or might not be good ones. Each has pros and cons. I have quickly read this thread but may not have gotten every nuance.
* The dev could potentially ask questions here.
* You could give every user the password to elevate the privileges, and instructions when NOT to. Assuming the Tickets app is not malicious, it's not likely to become malicious unless the PC gets a virus. Still, if that happened, that could cause problems. You could also have a supervisor pre authorize and sign in certain workstations before the staff begins work.
* You could try setting UAC on one of the PC's to different levels and see what happens. On Windows 7, there are a couple of different settings. I don't know about Windows 10 or 11. I would never leave UAC set lower than it's default. I have mine set to max all the time, and am happy to enter my password when needed. If the PC is doing something "admin" like, I want to know it. That may or may not be practical for your user.
* If the users are logging into a Windows network, you could play around with the authentication and network privileges settings. I've only ever used Windows as an individual, so I cannot cite the steps. But, you could make a "Tickets Users" group and give that group admin access over only the Tickets app. Then you put appropriate users in the group. Then, the user could log in as normal and they would automatically have the authority to run Tickets ... I think. There could still be problems in the event of a virus.
* You could store all the currently local files on the server, maybe. This would slow the app down to a point. It would also potentially eliminate any UAC conflicts with the local drive or local system. I had this setup with Clipper back in the day. If you can make the program files read only on the server, it's harder for a virus to attack them. It might still be able to destroy the database, which would be bad. But, as people here have said, any time you have a bad actor inside your machine, you've got trouble. NOTE, IF you have people running the system remotely through a bridge or vpn or something, and they have to load the app from the remote server every time they run it, this can bring the system to a crawl. I had this problem back in the day with a remote site and I had to go out there and put local copies of the app on their local drive. I then had to force the remote PC to pull the app from the local drive rather than the LAN. It's not as much of a problem with high speed internet. (We had 128 Kbps of bandwidth through the bridge. No that's not a typo.) Still, if the user has to download 20 MB - 50 MB or something every time they start the app, it can be annoying. Running the app completely from the LAN will preclude running it stand alone if the LAN or server is down. But, I think you said you have some stuff on the server anyway.
* You can go into the properties of the Windows icon to start Tickets, and the properties of the exe file itself, and under the compatibility tab (at least on Windows 7), you can turn off the setting to run as administrator, if it's on. You may have to do this both on the icon and on the exe. You may have to update it every time the program exe is updated. You can see if the program will run without requiring elevated privileges. It may not. Conversely, if this setting is initially off, you can set it on to require the UAC password as soon as the program is started.
* Under the properties of the icon and the exe, under the security tab, there are a whole host of settings which control which groups and users can run the app and what privileges they have. Some of these might be useful. Knowing what to do with them is beyond my knowledge level and beyond the scope of this post.
* You may be able to poke around in the Event Viewer in Windows (in Windows 7, Start, Administrative Tools, Event viewer) to find out what's happening under the covers when the UAC request is issued. It might be useful to see what fails if the user does not enter the password and just cancels out of UAC. Does the program abort? Does it partly work? If the program throws up an error, that might contain useful data.
* The dev may be able to turn on trace mode or debugging mode in the program, to see what subroutines are triggering the UAC request and generate log files. This should never be left on in production for long as it can provide exploitable information to attackers. It can also make log files grow too huge.
That's all I can think of at the moment.
I hope this is useful and that it at least gives you some things to think about.
May your bits be stable and your interfaces be fast.

Ron