c # - Kør batfil som administrator uden at vide om brugeren

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg kender titlen sømmer lidt skyggefulde, og der er et par spørgsmål allerede, men de svarer ikke rigtigt på mit spørgsmål.
Jeg forsøger at lave en selvopdatering af Windows-tjenesten. Problemet er, at tjenesten vil køre på baggrund af et register, jeg vil ikke have brugeren til at være hurtig at opdatere tjenesten. Jeg forsøger nu at køre en batchfil som administrator uden at skulle godkende det i prompt vinduet.


Jeg bruger StartInfo.Verb = "runas"

Her er min kode



private void RestartService()
    {
        System.Diagnostics.Process proc = new System.Diagnostics.Process();
        proc.StartInfo.FileName = $"{Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location)}\assets\renameAndRestart.bat";
        proc.StartInfo.Verb = "runas";
        proc.StartInfo.WorkingDirectory = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
        proc.Start();
    }

Bedste reference