Moin,
ein Projekt gedenke ich über ClickOnce zu veröffentlichen. Dazu habe ich ein paar Fragen:
zu 3) Im Netz finde ich nur (sinnvolle) Hinweise darauf, dass es keine "fertige" Methode als Lösung bei .NET 6 gibt und man etwas tricksen muss. Das eleganteste läuft darauf hinaus, die Manifestdatei zu lesen und sich die Info daraus zu extrahieren.
-- EDIT --
sry, wenn ich mal wieder überwiegend mit mir selbst spreche.
Gruß
MQ
ein Projekt gedenke ich über ClickOnce zu veröffentlichen. Dazu habe ich ein paar Fragen:
- Beim Anlegen des ClickOnce-Profils muss ich zwei Pfade angeben. Der eine für publish, der andere für install. Was hat es mit dem install Ordner auf sich? Auch nach einem Aufruf von setup.exe und erfolgreicher Installation bleibt der im Profil anzugebende Ordner leer.
-- EDIT--
Denkfehler mal wieder. Alles gut!
- Wähle ich als Zielplattform x64, meckert die Installationsroutine, sie würde Dateien nicht finden. Diese sind ins Projekt eingebundene DLLs unter dem Verzeichnis en-US. Wähle ich als Zielplattform portierbar, dann sind alle Ordner und Dateien vorhanden. Ist das nu Bug or Feature?
-- EDIT -- - Da gibt es noch was drittes. Bei den ClickOnce-Einstellungen kann/muss man Versionsnummern eintragen. Wie komme ich an diese im Code ran? Mich interessieren nicht die Assembly-Versionen sonder nur die der veröffentlichten Gesamtapp, also das was man bei der Veröffentlichung angibt. Es gab mal
Application.ProductVersion
. Bei .NET 6 gibt es das offensichtlich nicht
zu 3) Im Netz finde ich nur (sinnvolle) Hinweise darauf, dass es keine "fertige" Methode als Lösung bei .NET 6 gibt und man etwas tricksen muss. Das eleganteste läuft darauf hinaus, die Manifestdatei zu lesen und sich die Info daraus zu extrahieren.
C#-Quellcode
- public static string GetVersion(string manifestfile)
- {
- if (File.Exists(manifestfile))
- {
- var manifest = File.ReadAllText(manifestfile);
- var version = Regex.Match(manifest, "(?<=name\\=\"AppName.exe\" version=\")\\d+.\\d+.\\d+.\\d+");
- if (version.Success)
- {
- return version.Value;
- }
- }
- return "N.N.N.N";
- }
-- EDIT --
sry, wenn ich mal wieder überwiegend mit mir selbst spreche.
Gruß
MQ
Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „MasterQ“ ()