Win32 应用程序设置
Win32 Application Settings
如何存储以后可以加载到应用程序中的设置?
例如,我有一个编辑控件,用户可以更改其字体、字体颜色和背景颜色。当用户更改这些时,我想保存它们,以便当用户再次打开应用程序时,字体和颜色将与他们离开时相同。
我曾考虑过写入Windows注册表,但我不仅对如何在那里保存字体感到困惑(或者即使你可以做这样的事情),而且我还有一个可以从闪存驱动器上运行的便携式版本。有没有办法将这些设置保存到与可执行文件位于同一目录中的文件中?如果是这样,我将如何保存和加载这些?
如果没有办法使用设置文件完成此操作,我如何使用 Windows 注册表来执行此操作?
IMO的最佳方法是将其存储在ini文件中,例如,一个文件:app.ini
[AppSettings]
fntBackground=255 255 0
fntFace=Tahome
[LoadDialog]
...
自己编写它很容易,您也可以在CodeProject上找到现成的类,我快速搜索并找到了这个:
http://www.codeproject.com/Articles/5401/CIni
看起来很有希望
如果允许应用程序写入文件夹,则可以像许多 Windows 应用程序一样使用 .ini 文件。您可以使用GetPrivateProfile/WritePrivateProfile
API 读取和写入文件,例如GetPrivateProfileInt
如果您使用的是某些框架,则它可能还提供更友好的API版本(例如,MFC提供CWinApp::GetProfileInt
等)。
在Windows中读取配置信息的最简单方法是使用Zdeslav Vojkovic所说的GetPrivateProfileString/WritePrivateProfileString函数。
但随后您会看到以下内容:注意:提供此函数只是为了与基于 16 位 Windows 的应用程序兼容。应用程序应在注册表中存储初始化信息。这在今天也已经过时了,而且经常被禁止。建议(但通常只是简单的方式)要求您为此使用 XML 文件。然后你可以使用任何你喜欢的方法 - DOM,SAX,XMLLite。
- 设置我的应用程序 API 感知并防止系统使其模糊和错误定位
- 我可以对 2 个或更多应用程序进行 QSettings 设置吗?
- 如何设置Qt应用程序以使用类Unix系统的实际环境变量?
- 适用于 macOS 的 Xcode 应用程序。这就是我设置从USB麦克风输入获取音频的方式。一年前工作,现在没有了。为什么
- 如何将从控制台应用程序C++回调设置为C++ COM DLL
- 使用代码在 AWS 开发工具包C++控制台应用程序上设置凭证
- 如何使用CMake在Windows上将应用程序入口点设置为main()C++?
- 为没有qmake/VS的Qt Windows应用程序设置.exe图标
- 如何在MFC对话框应用程序中默认将复选框设置为选中?
- 如何在C++应用程序中设置"Select Precision"光标?
- 如何在应用程序进行大量printf时,在固定输入的终端中设置最后一行
- 如何以编程方式设置应用程序EXE文件的图标
- 如何在OS X上的Qt应用程序中设置应用程序图标,足以进行分发
- 使用CMake设置应用程序图标
- 如何在Qt中设置应用程序图标
- 以编程方式设置应用程序的处理器相关性
- 没有找到为windows应用程序设置应用程序图标的问题.rc文件
- 如何在Mac上设置c++应用程序名称和图标
- 以程序方式设置应用程序的播放设备
- Qt5.6设置应用程序图标(Linux)