ページ 11

デスクトップ以下すべてのiniファイルを取得する

Posted: 2011年2月14日(月) 11:15
by なぎの
デスクトップ以下のすべてのデスクトップ%s\\*.ini
ファイル名とファイルの中身を再起処理で取得したいです。


/*デスクトップまでのPath取得*/
SHGetSpecialFolderPath(NULL, buffa, CSIDL_DESKTOPDIRECTORY, FALSE);


サンプルをご掲示お願いします。

実行例は
C:\.......デスクトップ\test1.ini
[設定1]
ON
C:\.......デスクトップ\test2.ini
[設定2]
ON




といったかんじでprint出力できるようにしたいです。
よろしくお願いします

Re: デスクトップ以下すべてのiniファイルを取得する

Posted: 2011年2月14日(月) 12:28
by non
開発環境を明記してください。
「再起」は「再帰」でしょうか?

Re: デスクトップ以下すべてのiniファイルを取得する

Posted: 2011年2月14日(月) 12:42
by bitter_fox
どのあたりが分からないのでしょうか?

Iniファイルの読み出しですか?それとも、ファイルの列挙ですか?

Iniファイルの読み出しは、今回は特定のセクションとキーが決まっていないので、次の関数を使用します。
GetPrivateProfileSectionNames
http://msdn.microsoft.com/ja-jp/library/cc429773.aspx
GetPrivateProfileSection
http://msdn.microsoft.com/ja-jp/library/cc429770.aspx

また、ファイルの列挙はWindowsAPIの場合は次を使用します。
FindFirstFile
http://msdn.microsoft.com/ja-jp/library/cc429233.aspx
FindNextFile
http://msdn.microsoft.com/ja-jp/library/cc429242.aspx

あと、デスクトップのサブディレクトリ内も検索するんですか?