diff options
| author | AShifter <[email protected]> | 2017-11-17 20:29:46 -0700 |
|---|---|---|
| committer | AShifter <[email protected]> | 2017-11-17 20:29:46 -0700 |
| commit | ebdc09fe679b4b06fd149c8fc6539244100ce896 (patch) | |
| tree | 65dfe45bbfd194ddb534cc80107ab8e6d80cf5bc /ShiftOS.Engine/Misc/IniFile.cs | |
| parent | 1d0b393e6969d9671daead8049973a374421046f (diff) | |
| parent | 97722fbe9d474adffbba0b92e9727c48a8205234 (diff) | |
| download | shiftos-rewind-ebdc09fe679b4b06fd149c8fc6539244100ce896.tar.gz shiftos-rewind-ebdc09fe679b4b06fd149c8fc6539244100ce896.tar.bz2 shiftos-rewind-ebdc09fe679b4b06fd149c8fc6539244100ce896.zip | |
Merge remote-tracking branch 'refs/remotes/ShiftOS-Rewind/master'
Diffstat (limited to 'ShiftOS.Engine/Misc/IniFile.cs')
| -rw-r--r-- | ShiftOS.Engine/Misc/IniFile.cs | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/ShiftOS.Engine/Misc/IniFile.cs b/ShiftOS.Engine/Misc/IniFile.cs new file mode 100644 index 0000000..e31583f --- /dev/null +++ b/ShiftOS.Engine/Misc/IniFile.cs @@ -0,0 +1,50 @@ +using System.Runtime.InteropServices; +using System.Text; + +namespace ShiftOS.Engine.Misc +{ + /// <summary> + /// Create a New INI file to store or load data + /// </summary> + public class IniFile + { + readonly string _path; + + public IniFile(string iniPath) => _path = iniPath; + + [DllImport("kernel32")] + static extern long WritePrivateProfileString( + string section, + string key, + string val, + string filePath); + + [DllImport("kernel32")] + static extern int GetPrivateProfileString( + string section, + string key, + string def, + StringBuilder retVal, + int size, + string filePath); + + public void WriteValue(string section, string key, string value) + { + WritePrivateProfileString(section, key, value, _path); + } + + public string ReadValue(string section, string key) + { + var temp = new StringBuilder(255); + GetPrivateProfileString( + section, + key, + "", + temp, + 255, + _path); + + return temp.ToString(); + } + } +}
\ No newline at end of file |
