2009-05-24 5 views
0

私はウィザードベースのMFCアプリケーションを持っています。 Appはユーザに可変数の質問をし、INIファイルに書き込まれます。このINIファイルは、ユーザが完了をクリックすると暗号化されます。メモリINIファイルライタ

これまで見たことのあるすべてのINIファイルパーサーは、ディスク上の物理ファイルに対して読み書きを行っています。 INIファイルに機密情報が含まれているので、私はこれをしたくありません。代わりに、私はINIファイルがメモリに基づいているだけで、暗号化されていない形式ではディスクに書き込まれないようにしたいと思います。

このアプリでは、ユーザーが戻り値を変更できるようになっているため、メモリ内のデータベースをこの目的のために使用することができましたが、ディスクに書き込まれることはもうありません。また、DBそれが避けられれば私のアプリと一緒に。

暗号化されていないものがサードパーティによって処理される場合は、ファイルとしてINIファイルを使用する必要があります。

提案が歓迎されました。

おかげ..

答えて

3

は、私はあなたがメモリ内のINIファイルで作業することができますをIniFile C++クラスを持っている: 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(); 

あなたはそれが保存されたデータに暗号化のいくつかの種類が適用されるようにフラッシュ()メソッドを変更することができるはずです。

+0

これはうまく見えます。 – Skilldrick

0

インメモリービューがディスク上のファイルにフラッシュバックされるタイミングを制御できるため、メモリマップファイルのアプリケーションによく似ています。

+0

はい、私が計画していたことですが、INIファイルがディスクに書き込まれないようにする必要があります。そして、私はMMFでこれを行う方法がありません。 – Canacourse

0

ディスクに保存されないと、なぜiniファイル形式にする必要がありますか?

データ構造としてメモリ内に保持し、通常のiniファイルメソッドを使用してディスクに書き込むのはなぜでしょうか?

0

ファイルに保存したくない場合、INIファイルを使用するポイントは何ですか? INI APIは、基本的にディスクファイルに基づくプロパティバッグまたはキー値のペアです。 ファイルを使用したくない場合は、独自のハッシュまたは辞書データ構造を使用してキー値のパールを格納することをお勧めします。

+0

Iniファイルはディスクに保存されますが、暗号化された場合にのみ保存されます。ありがとう.. – Canacourse