OnAfterInstall не работает после установки winform C#

Я новичок в программировании winform и пытаюсь сгенерировать exe установочный файл, для этого я использую MicrosoftVisualStudio2015InstallerProjects.

Я создал файл.exe, и он работает нормально, но после установки каждый раз мне нужно зайти в каталог установки и дать разрешение пользователю. Чтобы избавиться от этой проблемы, я попытался использовать AfterInstall событие и дать все разрешения для пользователя.

public partial class ClientInstaller: Installer
{
   public ClientInstaller() : base()
   {
       AfterInstall += new InstallEventHandler(AfterInstallEventHandler);
   }
}

private void AfterInstallEventHandler()
{       
    string appPath = Path.GetDirectoryName(Application.StartupPath);

    DirectoryInfo dInfo = new DirectoryInfo(appPath);
    DirectorySecurity dSecurity = dInfo.GetAccessControl();
    dSecurity.AddAccessRule(new FileSystemAccessRule(new SecurityIdentifier(WellKnownSidType.WorldSid, null), FileSystemRights.FullControl, InheritanceFlags.ObjectInherit | InheritanceFlags.ContainerInherit, PropagationFlags.NoPropagateInherit, AccessControlType.Allow));
    dInfo.SetAccessControl(dSecurity);
} 

Но, похоже, событие не сработало после установки. Затем я попытался переопределить OnAfterInstall

public partial class ClientInstaller: Installer
{
   protected override void OnAfterInstall(IDictionary savedState)
   {
       base.OnAfterInstall(savedState);
       // Add steps to be done after the installation is over.
       Console.WriteLine("OnAfterInstall method of MyInstaller called");
   }
}  

Хотя это не показывает мне консоль (изменил цель на консоль).

Я что-то здесь упускаю?

0 ответов

Другие вопросы по тегам