Ist es möglich, NGen mit ClickOnce-Bereitstellung zu verwenden?Ist es möglich, NGen mit ClickOnce-Bereitstellung zu verwenden?
19
A
Antwort
16
Eigentlich können Sie NGEN und clickone verwenden, aber Sie müssen das NGEN nach der Clickonce-Installation ausführen, da NGEN Teil der .NET-Installation ist (für 3.5 sollten Sie auf die 2.0-Installation verweisen). Hier
ist ein Beispiel, ich denke, es ist generisch genug für Sie, es zu benutzen, ohne zu ändern oder zu tun sehr wenig Änderungen am Code (mit Ausnahme den Anruf an der Form):
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
if (ApplicationDeployment.IsNetworkDeployed && ApplicationDeployment.CurrentDeployment.IsFirstRun)
{
string appPath = Application.StartupPath;
string winPath = Environment.GetEnvironmentVariable("WINDIR");
Process proc = new Process();
System.IO.Directory.SetCurrentDirectory(appPath);
proc.EnableRaisingEvents = false;
proc.StartInfo.CreateNoWindow = false;
proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
proc.StartInfo.FileName = winPath + @"\Microsoft.NET\Framework\v2.0.50727\ngen.exe";
proc.StartInfo.Arguments = "uninstall " + Application.ProductName + " /nologo /silent";
proc.Start();
proc.WaitForExit();
proc.StartInfo.FileName = winPath + @"\Microsoft.NET\Framework\v2.0.50727\ngen.exe";
proc.StartInfo.Arguments = "install " + Application.ProductName + " /nologo /silent";
proc.Start();
proc.WaitForExit();
}
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
4
Nein, das geht nicht. Siehe http://social.msdn.microsoft.com/Forums/en-US/clr/thread/a41b62c5-bdee-4bd5-9811-15a35c4a4add/. Sie müssen dafür eine reguläre Installer-Datei erstellen.
Verwandte Themen
- 1. Ist es möglich, Inline-Vorlagen zu verwenden?
- 2. Ist es möglich, Reflexion mit LINQ zu Entität zu verwenden?
- 3. Ist es möglich, NGen-Images vorab zu generieren, sodass Kunden dies nicht tun müssen?
- 4. Ist es möglich, Python mit PHP zu verwenden
- 5. Ist es möglich, jQuery intellisense mit klassischem Asp zu verwenden?
- 6. Ist es möglich, std :: accumulate mit std :: min zu verwenden?
- 7. Ist es möglich, JIL mit asp.net core rc2 zu verwenden?
- 8. Ist es möglich, Bindungen mit Anmerkungen zu verwenden?
- 9. Ist es möglich, proguard mit Grails zu verwenden
- 10. Ist es möglich, nHibernate mit Paradox-Datenbank zu verwenden?
- 11. ist es möglich, ExtJS mit backbone.js zu verwenden?
- 12. Ist es möglich, Django mit Qooxdoo Framework zu verwenden?
- 13. Ist es möglich, mongodb mit sqlalchemy zu verwenden?
- 14. Ist es möglich, Cassandra mit Node.js zu verwenden?
- 15. Ist es möglich, Wildcards mit XInclude Tags zu verwenden?
- 16. Ist es möglich, Variablen für Sammlungsnamen mit Pymongo zu verwenden?
- 17. Ist es möglich, Ropemacs mit TRAMP in Emacs zu verwenden?
- 18. Ist es möglich, .NET Reactor mit ClickOnce-Bereitstellung zu verwenden?
- 19. Ist es möglich, zu verwenden activeadmin mit weniger css
- 20. Ist es möglich, SQLite.NET mit unveränderlichen Datensatztypen zu verwenden?
- 21. Ist es möglich, mit youtube-api modelbranding zu verwenden?
- 22. Ist es möglich, `case object` mit einem Typparameter zu verwenden?
- 23. Ist es möglich, Riak CS mit Apache Flink zu verwenden?
- 24. Ist es möglich, app_offline mit Azure-Websites zu verwenden?
- 25. Ist es möglich, Skydrive mit SVN zu verwenden?
- 26. Ist es möglich, Object.defineProperties mit Symbolen zu verwenden?
- 27. Ist es möglich, reguläre Ausdrücke mit PDFquery zu verwenden?
- 28. Ist es möglich, mysql mit javascriptl zu verwenden?
- 29. Ist es möglich, cin mit Qt zu verwenden?
- 30. Ist es möglich, mysqli_fetch_object mit einer vorbereiteten Anweisung zu verwenden
Das funktioniert nicht auf Windows 7 (und ich glaube Vista), weil 'ngen' als Administrator laufen möchte. –
Dies ist nicht sehr praktisch, da es Administratorberechtigungen erfordert. Die Natur von clickonce ist, dass es keine Administratorberechtigungen für die Installation benötigt, daher wäre das Hinzufügen dieses Codes nicht sinnvoll. – pmcilreavy