Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Programinställningar för Windows Forms gör det enkelt att skapa, lagra och underhålla anpassade program- och användarinställningar på klienten. I följande dokument beskrivs hur filer för programinställningar fungerar i ett ClickOnce-program och hur ClickOnce migrerar inställningar när användaren uppgraderar till nästa version.
Informationen nedan gäller endast för standardprovidern för programinställningar, klassen LocalFileSettingsProvider. Om du anger en anpassad provider avgör providern hur den lagrar sina data och hur den uppgraderar sina inställningar mellan versioner. Mer information om leverantörer av programinställningar finns i Arkitektur för programinställningar.
Filer för programinställningar
Programinställningarna använder två filer: <app>.exe.config och user.config, där appen är namnet på ditt Windows Forms-program. user.config skapas på klienten första gången programmet lagrar användaromfattande inställningar. <app>.exe.configfinns däremot före distributionen om du definierar standardvärden för inställningar. Visual Studio inkluderar den här filen automatiskt när du använder dess publish-kommando . Om du skapar ditt ClickOnce-program med Mage.exe eller MageUI.exemåste du se till att filen ingår i programmets andra filer när du fyller i programmanifestet.
Anmärkning
I ClickOnce för .NET Core 3.1 och .NET 5 eller senare använder dotnet-mage.exe i stället för Mage.exe. Mer information finns i ClickOnce för .NET.
I ett Windows Forms-program som inte har distribuerats med ClickOnce lagras ett programs <app>.exe.config fil i programkatalogen, medan denuser.config filen lagras i användarens dokument - och inställningsmapp . I ett ClickOnce-program< finns.exe.config> i programkatalogen i ClickOnce-programcachen och user.config finns i ClickOnce-datakatalogen för programmet.
Oavsett hur du distribuerar ditt program säkerställer programinställningarna säker läsåtkomst till <app>.exe.configoch säker läs-/skrivåtkomst till user.config.
I ett ClickOnce-program begränsas storleken på de konfigurationsfiler som används av programinställningarna av storleken på ClickOnce-cachen. Mer information finns i Översikt över ClickOnce-cache.
.NET Core och .NET 5+
För närvarande måste en .NET Core-sammansättning som ska publiceras signeras med en stark namnnyckelfil. Om det inte är ApplicationSettingsBase.Upgrade, kopierar metoden inte inställningarna korrekt efter en ny ClickOnce-publicering. Du kan ange ett starkt namn i .NET Core-projektets egenskaper under alternativet Skapa > stark namngivning .
Versionsuppgraderingar
Precis som varje version av ett ClickOnce-program är isolerat från alla andra versioner, isoleras även programinställningarna för ett ClickOnce-program från inställningarna för andra versioner. När användaren uppgraderar till en senare version av programmet jämför programinställningarna de senaste (högst numrerade) versionernas inställningar med de inställningar som medföljer den uppdaterade versionen och sammanfogar inställningarna till en ny uppsättning inställningsfiler.
I följande tabell beskrivs hur programinställningar bestämmer vilka inställningar som ska kopieras.
| Typ av ändring | Uppgraderingsåtgärd |
|---|---|
| Inställning lagd till <app>.exe.config | Den nya inställningen sammanfogas i den aktuella versionens <app>.exe.config |
| Inställningen har tagits bort från <app>.exe.config | Den gamla inställningen tas bort från den aktuella versionens <app>.exe.config |
| Inställningens standard har ändrats. den lokala inställningen är fortfarande inställd på ursprunglig standard i user.config | Inställningen sammanfogas till den aktuella versionens user.config med det nya standardvärdet som värde |
| Inställningens standard har ändrats. inställningen är inställd på icke-standard i user.config | Inställningen integreras i den aktuella versionens user.config och behåller sitt icke-standardvärde. |
Om du har skapat en egen programinställningshanteringsklass och vill anpassa uppdateringslogik kan du åsidosätta Upgrade metoden.
ClickOnce- och roaminginställningar
ClickOnce fungerar inte med nätverksväxlingsinställningar, vilket gör att din inställningsfil kan följa dig mellan datorer i ett nätverk. Om du behöver nätverksväxlingsinställningar måste du antingen implementera en programinställningsprovider som lagrar inställningar över nätverket eller utveckla egna anpassade inställningsklasser för lagring av inställningar på en fjärrdator. Mer information om inställningsprovidrar finns i Arkitektur för programinställningar.