RegQueryValueExでアクセス違反

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
返信する
メッセージ
作成者
水波形
記事: 106
登録日時: 2009年3月29日(日) 15:45
連絡する:

RegQueryValueExでアクセス違反

#1 投稿記事 by 水波形 »

ご無沙汰しております。

今回、WindowsのProductIDを取得しようとして、以下のコードを書きました。 初めてのレジストリの操作でどきどきしながらデバッグコンパイル。

どうやら、

コード: 全て選択

RegQueryValueEx(hKey,"ProductId",&0,REG_SZ,p_id,re)
ここで、アクセス違反が起きているようです。

しかし、どうしてかが分かりません。

すいませんが、ご存知の方がいらっしゃいましたら、ご教授ください。
お願いします。
↓個人的ソフト置き場
http://www.software.jpn.org/
↓萌えゲー製作とかしていたい
http://www.holygate.jpn.org/
HSABP

#2 投稿記事 by HSABP »

わからないわからないではなくまずポインタの勉強を先にしてリファレンスをよく読む
検索する。Cのサンプルでもあたること。


正解を書いてもよいのだが力にならないのでヒントだけ提示する。

pathにはmallocしてもその後リテラルを代入しているのだから
これはしてはいけないこと、後のfreeで問題になる

変数reはDWord型にしバッファサイズを代入し
RegQueryValueExの第6引数にポインタを渡すこと

RegQueryValueExの大4引数は型が戻ってくるのでありこちらが指定してはいけない
返信する