Qu'est-ce que le format de fichier SETTINGS ?
Un fichier .settings est un document XML utilisé par Visual Studio pour définir des paramètres d'application et d'utilisateur typés et persistants dans les projets de bureau .NET. Il se trouve dans le dossier Properties/ des projets C# (ou My Project/ en VB.NET) et est presque toujours nommé Settings.settings.
La structure XML utilise un élément racine <SettingsFile> contenant des entrées <Setting>, chacune avec un nom, un type .NET (System.String, System.Drawing.Color, etc.), une portée (Application ou User) et une valeur par défaut. Au moment de la compilation, MSBuild génère une classe wrapper fortement typée - généralement Properties.Settings - de sorte que les paramètres sont accessibles dans le code via Properties.Settings.Default.MySettingName avec un support complet d'IntelliSense.
La portée détermine le comportement à l'exécution :
- Les paramètres de portée Application sont en lecture seule à l'exécution et stockés dans
app.config/app.exe.config. - Les paramètres de portée User sont en lecture-écriture à l'exécution et persistent dans
user.configdans le dossier%AppData%de l'utilisateur.
Le schéma .settings est stable depuis .NET Framework 2.0 (Visual Studio 2005) et reste l'approche standard pour les applications de bureau WinForms et WPF jusqu'à .NET 8. Pour les nouveaux projets .NET 5+ multiplateformes, Microsoft recommande d'utiliser appsettings.json avec IConfiguration à la place.
Sécurité et sûreté
RISQUE : LOWUn fichier .settings est du XML pur et ne peut pas s'exécuter. Il peut contenir des informations sensibles (chaînes de connexion, clés API, noms d'utilisateur/mots de passe par défaut) si le développeur a stocké de telles données dans les paramètres de portée Application - inspectez-le avant de le partager ou de le soumettre au contrôle de version. Les paramètres de portée User contenant des données sensibles sont préoccupants si le fichier user.config dans AppData est exposé.
Détails du format
en bref- Fichiers de configuration d'application génériques (divers) - De nombreuses applications non-.NET et moteurs de jeu utilisent .settings comme extension générique pour des configurations de style XML ou INI - sans rapport avec Visual Studio.
- Paramètres de l'éditeur Unity - Le moteur Unity Engine utilise des fichiers .settings pour certaines préférences internes de l'éditeur ; format distinct du .settings de Visual Studio.
Programmes qui ouvrent les fichiers SETTINGS
Détails techniques
spécifications approfondies| Encodage du fichier | Texte UTF-8 (déclaré dans l'en-tête de déclaration XML) |
| Type MIME | application/xml (alt : text/xml) |
| Élément XML racine | <SettingsFile> contenant les éléments enfants <Settings> et <Setting> |
| Types de portée de paramètre | Application (lecture seule à l'exécution, stocké dans app.config) et User (lecture-écriture, persisté dans user.config) |
| Chemin d'exécution de la portée User | %AppData%\NomSociété\NomApp\Version\user.config |
| Génération de code à la compilation | MSBuild génère une classe wrapper Properties.Settings fortement typée avec des accesseurs typés accessibles via IntelliSense |
| Nom de fichier standard | Settings.settings (par convention ; un par projet) |
| Emplacement dans le dossier du projet | Dossier Properties/ (projets C#) ou dossier My Project/ (projets VB.NET) |
| Stabilité du schéma | Inchangé depuis .NET Framework 2.0 / VS 2005 jusqu'à .NET 8 / VS 2022 |
| Types de valeurs pris en charge | Tout type .NET sérialisable : String, Int32, Boolean, Color, Size, chaînes de connexion et types personnalisés |
| Système d'exploitation | Windows (.NET Framework et charges de travail de bureau .NET) |
| Alternative moderne | appsettings.json + IConfiguration, recommandé pour les projets multiplateformes .NET 5+ |
| Publié | 2005 (.NET Framework 2.0 / Visual Studio 2005) |
| Dernière version | Current as of Visual Studio 2022 / .NET 8 (schema unchanged since .NET 2.0) |
| Spécification | learn.microsoft.com |
Conversions SETTINGS
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers SETTINGS.