iniファイルのキーを跡形もなく消すには?

解決


たかみちえ  URL  2001-08-22 23:02:22  No: 74792  IP: [192.*.*.*]

iniファイルのキーを消すには、vbNullStringをいれておけばいいって聞いて、
たしかにいつもは気にすることもないんですけど、
下の書きこみのLoadmenu関数で通し番号のついたメニューを読みこむときには、
削除した番号が欠番になってしまいます。
(空っぽでも"2="だけ残ってるため)
キーの=以前も含め、跡形もなく消すにはどうしましょう?
セクションごと一旦消して、書きなおすという方法もあるにはありますが…。

編集 削除
Rabbit  2001-08-24 15:27:18  No: 74793  IP: [192.*.*.*]

WritePrivateProfileStringの第3引数にNothingを指定して下さい。
はずしていたらすみません。

編集 削除
たかみちえ  2001-08-30 19:44:39  No: 74794  IP: [192.*.*.*]

遅れました。
  …で、消えていないようです…。

編集 削除
Rabbit  2001-08-31 10:30:44  No: 74795  IP: [192.*.*.*]

環境確認をさせて下さい。
VB5 + SP3 以上 & IE5 以上でしょうか?

編集 削除
たかみちえ  URL  2001-08-31 11:19:00  No: 74796  IP: [192.*.*.*]

http://homepage2.nifty.com/_omp/Download/Statas.htmに書いてあります。
メモリ面ではさらに悪化してます^^;

編集 削除
Rabbit  2001-08-31 13:08:58  No: 74797  IP: [192.*.*.*]

私が試すと、問題なく削除されるのですが・・

[Section1]
Key1=Data1
で、
Call WritePrivateProfileString("Section1", "Key1",Nothing, IniFilePath)を実行すると、
[Section1]のみになります。
因みに、私の環境は VB6 + SP5 & IE5.5 SP2です。

編集 削除
Rabbit  2001-08-31 13:12:24  No: 74798  IP: [192.*.*.*]

AKIさんが作成された、INIファイル関連操作用のクラスモジュールが下記よりDL出来ますので、参考にして下さい。

http://versionup.banbi.net/src/classlibrary/inifile/clsini.lzh

編集 削除
たかみちえ  2001-08-31 15:34:54  No: 74799  IP: [192.*.*.*]

あ、作業環境のページにはVBのバージョンがなかったですね^^;
VB6(Pro)のSP5です。

  見てみたところ、たしかにわたしのやってることとちがう。
そのへんが問題発生の原因かも…。
後は数字だけで管理していたので、判別つきにくいところもありますし…。

編集 削除
Rabbit  2001-08-31 18:02:20  No: 74800  IP: [192.*.*.*]

何とかなりそうでしょうか?
力不足で申し訳ありません。

編集 削除
たかみちえ  2001-08-31 18:29:35  No: 74801  IP: [192.*.*.*]

ごめんなさい、どうやら直後のステートメントで消したものを復活させてしまっていたようです^^;
それもなおり(ほんとは数字の数え間違えもあったんですけど)ちゃんと消えました。
ありがとうございます。

  わたしの最後のミスってだいたいこんなのだったりします…。

編集 削除
Rabbit  2001-09-01 08:47:58  No: 74802  IP: [192.*.*.*]

無事に解決出来たみたいでよかったです。

編集 削除
たかみちえ  2001-09-03 15:38:25  No: 74803  IP: [192.*.*.*]

あ、解決し忘れてた^^;

編集 削除