ページ 1 / 1
レジストリ
Posted: 2005年12月08日(木) 01:46
by konisi
ちょっと高等なプログラムを作ろうということでレジストリを使いたいのですが、使い方がいまいちよくわかりません。
iniファイルに出力する位なら別に僕にとって簡単なことなので構わないんですが内容を見られたくないので、レジストリにString型文字列を退避させたい次第です。
どなたかサンプルソース下さい。
Re: レジストリ
Posted: 2005年12月08日(木) 10:55
by ゲスト
> 内容を見られたくないので、レジストリにString型文字列を退避させたい次第です。
レジストリでも、内容は、見えますよ。
暗号化して、iniに書き出すとか。
Re: レジストリ
Posted: 2005年12月08日(木) 11:22
by Tomorrow
> どなたかサンプルソース下さい。
Win32プログラミング講座 ~ Step28. メモリ監視ツールを作る② ~
に、レジストリ操作用APIの使い方が載っています。
Re: レジストリ
Posted: 2005年12月08日(木) 13:17
by hanchan
> どなたかサンプルソース下さい。
こんな感じでどうでしょう?
[ここをクリックすると内容が表示されます] [ここをクリックすると非表示にします]
コード: 全て選択
#console
Dim strLetBuff As String
Dim strGetBuff As String
Dim hKey As HKEY
Dim ret As Long
Dim lngSize As Long
strLetBuff = "追加する値"
'レジストリにキーを追加
ret = RegCreateKeyEx(
HKEY_CURRENT_USER As HKEY,
"software\sample",
0,
NULL,
REG_OPTION_NON_VOLATILE,
KEY_SET_VALUE Or KEY_QUERY_VALUE,
ByVal 0,
hKey,
NULL
)
If (ret <> ERROR_SUCCESS) Then
Print "レジストリにキーを追加エラー"
End If
'レジストリに値を追加
ret = RegSetValueEx(
hKey,
"SAMPLE_SZ",
0,
REG_SZ,
StrPtr(strLetBuff),
lstrlen(StrPtr(strLetBuff))
)
If (ret <> ERROR_SUCCESS) Then
Print "レジストリ値追加エラー"
End If
'レジストリの値を読み込む
strGetBuff = ZeroString(255)
lngSize = Len(strGetBuff)
ret = RegQueryValueEx(
hKey,
"SAMPLE_SZ",
0,
0,
StrPtr(strGetBuff),
VarPtr(lngSize)
)
If (ret <> ERROR_SUCCESS) Then
Print "レジストリ値取得エラー"
End If
Print "レジストリから取得した値:" & strGetBuff
'レジストリのキーハンドルをクローズ
RegCloseKey(hKey)
Posted: 2005年12月09日(金) 19:09
by konisi
レジストリでも、内容は、見えますよ。
暗号化して、iniに書き出すとか。
レジストリだと弄るのがiniファイルに比べて面倒だと思いまして。
一応暗号化はする予定ですが。
Win32プログラミング講座 ~ Step28. メモリ監視ツールを作る② ~
に、レジストリ操作用APIの使い方が載っています。
レジストリの使い方がそんなところに載って居たんですねぇ、気づきませんでした。
hanchanさん、ありがとうございました。