TWebUpdate and UAC control

Hello


Unit WebUpdate contains

{$IFDEF USEUAC}
{$R WUPDATE.RES}
{$ENDIF}

{$IFNDEF USEUAC}
{$R WUPDATENO_UAC.RES}
{$ENDIF}

I have customer that has very strict rules regarding elevating rights. So each update of TMS components I have to remember to "turn off" USEUAC directive.
Is there a chance that you could rebuild this part to allow that on the project level, through some directive we can choose if we would like to use UAC or not.

TIA
Marcin

You could add the define USEUAC at project level

Bruno


What if I'd like to use updater with NO_UAC?
USEUAC is defined in this unit, so apparently there is no chance to turn it off at project level. :-(

Marcin

Remove the line

{$DEFINE USEUAC}
from WEBUPDATE.PAS and use it when needed at project level

Bruno


This exactly what I meant - everytime there is new version of component set, I have to remember to remove (or comment out) this line in this unit :-)
Could you consider something more permanent? :-)

TIA
Marcin

That is the solution for the situation how it is NOW.

I'm not sure how it can be addressed in another way. We will need to reflect on that.

Maybe invert the default?

Do not predefine USEUAC directive in WebUpdate.Pas and leave it to define at project level.

marcin

It is clear that any chance we consider needs to preserve backwards compatibility. We cannot afford to cause problems / unexpected behavior changes for the many other users who have come to expect the current behavior as default.

Filename has changed to Wupdate.pas

Not sure where you get this info from, but I cannot find any evidence that in more than a decade this component exists, that the unit was ever named anything else than wupdate.pas

Just took filename from your post on the 20th. When I couldn't find WebUpdate.pas figured the unit name had been changed

Was a typo indeed in post of 20 Feb, sorry for the confusion.

Backwards compatible way to allow to disable UAC:

or - where you define USEUAC

this will retain the USEUAC as default, but allow you to disable it by a project define (assuming you compile the .PAS file to .DCU in all projects).

I do not understand why something more is needed beyond what is already standard available with the existing USEUAC define.