• 締切済み

VB2008 iniファイルの全セクション取得方法

こんばんわ。iniファイルの全セクションを取得したく、 以下のコードを使うことはわかったのですが、ここから先がVB初心者の為全く解かりません。ボタン1を押したらC:\Test.ini のファイルの全セクションを取得というコードはどのように記入すればよいのでしょうか。 どうぞ宜しくお願いいたします。 Declare Function GetPrivateProfileSectionNames Lib "Kernel32.dll" _ Alias "GetPrivateProfileSectionNamesA" _ (ByVal lpszReturnBuffer As String, ByVal nSize As Long, _ ByVal lpFileName As String) As Long

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

お示しの宣言は VB6以前のやり方です VB2002以降とVB6以前では Long型の長さが異なります VB6以前は32ビット長、VB2002以降は64ビット長です APIのDWordは32ビット長を想定しているのでこれではうまくいきません LongをIntegerに変更が必要です

nyanmaru00
質問者

お礼

回答をありがとうございます! 引数の意味すら分からないため、コードがわからなかったのですが、 コピーしまして何とかなりました^^ ですが、Integerに変更するなどコピるだけでは無理と 分かりました。ありがとうございます。(__)

回答No.1

GetPrivateProfileSectionNamesの第一引数には、 vbNullCharを区切り文字として、vbNullChar2つで終端する文字列が帰ってきます。 ということで、GetPrivateProfileString等と同じで、文字領域をある程度とってわたし、 末尾のvbNullChar×2をとって、vbNullCharでSplit。

関連するQ&A

専門家に質問してみよう