我有一个MFC应用程序是基于向导。该应用要求用户可变数量的其随后写入到当用户点击完成稍后加密的INI文件的问题。

所有我见过的INI文件分析器迄今所看到的读取或写入到磁盘上的物理文件。我不想这样做,因为INI文件包含机密信息。相反,我想只基于内存中的INI文件,从不写入磁盘以未加密的形式。

由于应用程序允许用户返回并更改答案,它发生,我认为我可以在内存数据库使用的用于此目的,但我又不想任何东西写入磁盘,不希望推出一款与DB我的应用程序,如果能够避免它。

我必须使用一个INI文件,因为它的文件未加密时会由第三方进行处理。

任何建议欢迎。

谢谢..

有帮助吗?

解决方案

我有一个INIFILE C ++类,它允许你在存储器INI文件工作: http://www.lemonteam.com/downloads/inifile.h

这是一个短的,有据可查单h文件。示例用法:

IniFile if ( "myinifile.ini" );

if.SetString( "mykey", "myvalue" );


// Nothing gets actually written to disk until you call Flush(), Close() or the object is deleted
if.Flush();
if.Close();

您应该能够修改flush()方法,以便它适用某种加密来保存的数据。

其他提示

听起来像是一个内存映射文件的一个很好的应用,因为当你的内存视图获取刷新回磁盘上的文件,你可以控制的。

为什么你需要把它在一个ini文件格式,如果这是从来没有存储到磁盘?

为什么不直接保存在内存中的数据结构,并使用正常的ini文件的方法来把它写入磁盘时,你想。

如果你不想保存到文件中,什么是使用INI文件,然后点? INI API是bascially属性包或基于磁盘文件的键值对。 如果你不想使用的文件,我建议你用你自己的哈希或字典的数据结构来存储密钥值parirs

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top