一回も披露したことのない豆知識

いつも大変お世話になっています。

今回は、APIのRegQueryValueExを使用してレジストリの値を取得しようとしているのですが、
レジストリのデータ型に対応するVBのデータ型がわからないものがあったので
質問させていただきます。

REG_EXPAND_SZ 展開可能フィールド(%USERNAME% %SystemRoot%など)を含んだ文字列
REG_MULTI_SZ 連続したゼロで終わる文字列(Str1\0Str2\0Str3\0...
REG_BINARY バイナリデータ (最大1Mバイト)

の3つなんですが、REG_BINARYはByte型でもエラーは出なかったのですが、値がレジストリのものと
違いました。(レジストリ:00 00 01 00 のデータに対して 取得データ:0 が取得されたのです)

他の2つは文字列型、数値型、バリアント型で試しましたが、すべて、メモリの参照エラーになってしまうのです。

どうかよろしくお願いします。

A 回答 (2件)

    • good
    • 0
この回答へのお礼

回答ありがとうございます。m(_ _)m

お礼日時:2004/03/15 00:28

あらかじめ領域を確保してないとか、最後の引数のlpcbDataにバッファサイズを入れていないだけでは?



ソースがないのではっきりとはいえませんが。
    • good
    • 0
この回答へのお礼

#1さんのサンプルを見させていただき解決したのですが、実際のところ何が原因でメモリ不足になったのは未だになぞでして…。回答ありがとうございます。

お礼日時:2004/03/15 00:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!