Visual Studio Installieren Von Project: Holen Sie Sich Zielverzeichnis

Ich habe Graben rund um Google versucht zu finden, den geeigneten Weg zu bestimmen, den Installationspfad ausgewählt durch einen Benutzer aus der Installation-Assistenten.

Grundsätzlich bin ich laufen in ein Problem, wo mein Dienst kann nicht erstellen-Dateien in einem eigenen Verzeichnis, weil es nicht die richtige Berechtigungen. Ich gehe davon aus, dass die richtige Art und Weise zu lösen dies ist, um sicherzustellen, dass was auch immer account der Dienst ist über entsprechende Datei Berechtigungen auf die Ordner.

Aber bevor ich das kann sogar angehen, wie das festlegen der Berechtigungen durch .Net ich wissen muss, um die installation Ordner. Ich bin mit einer Installation project, die eine Installer-Klasse, die enthält eine ServiceInstaller Kontrolle. Beide haben die Context Eigentum, so ich habe zu prüfen, dass für die Parameter, die verfügbar sind, wenn der AfterInstall Ereignis wird ausgelöst für die jeweiligen Installationsprogramme. Ich dachte zuerst, ich würde sehen, das TargetDir Eigenschaft festlegen, aber das war nicht der Fall. Ich bin allerdings sehen AssemblyPath gesetzt und zeigt auf die ausführbare Datei des entsprechenden Ordners.

Im wesentlichen, ich möchte nur sicherstellen, dass dies die geeignete Methode, die ich verwenden sollten:

private void ProjectInstaller_AfterInstall(object sender, InstallEventArgs e)
{
    string InstallPath = System.IO.Path.GetDirectoryName(serviceInstaller1.Context.Parameters["AssemblyPath"]);;
}
Schreibe einen Kommentar