http://studyhallweb.com/
プログラム学習室
[Home][C++言語]Borland C++ Bulder

C++ Bulder レジストリの処理
//---------------------------------------------------------------------------

#include <vcl.h>
#include <Registry.hpp>
#include <iostream>
#pragma hdrstop

using namespace std;
//---------------------------------------------------------------------------

#pragma argsused
int main(int argc, char* argv[])
{
    AnsiString sKeyName = "Software\\hi_tag\\TEST\\MyWeb";
                            // キーの名前
    AnsiString sValue;      // キーの値

    TRegistry *Registry = new TRegistry(KEY_ALL_ACCESS);
    try {
        Registry->RootKey = HKEY_CURRENT_USER;
        Registry->OpenKey(sKeyName,true);
                                // 第二引数がtrueのとき、なければ作成
                                // falseのとき、なくても作成しない
        // 書き込み
        Registry->WriteString("URL","http://www.tagu.info/");
        // 読み込み
        sValue = Registry->ReadString("URL");
        Registry->CloseKey();
    }
    catch(...) {
        cout << "レジストリの処理に失敗しました\n";
    }
    delete Registry;
    cout << sKeyName.c_str() << "=" << sValue.c_str() << endl;

    // 終了処理
    char sInput[80];
    cout << "Enterで終了します\n";
    cin.getline(sInput,80);

    return 0;
}
//---------------------------------------------------------------------------

TRegistryのインスタンス時にモードを指定できる
KEY_ALL_ACCESS
KEY_READ,KEY_WRITE,および KEY_CREATE_LINK の組み合わせ
KEY_READ
KEY_QUERY_VALUE,KEY_ENUMERATE_SUB_KEYS,および KEY_NOTIFY の組み合わせ
KEY_WRITE
KEY_SET_VALUE と KEY_CREATE_SUB_KEY の組み合わせ
KEY_QUERY_VALUE
サブキーのデータを問い合わせるアクセス許可を認める
KEY_ENUMERATE_SUB_KEYS
サブキーを列挙するアクセス許可を認める
KEY_NOTIFY
変更通知の受け取りを可能にする
KEY_SET_VALUE
サブキーのデータを設定するアクセス許可を認める
KEY_CREATE_SUB_KEY
サブキーを作成するアクセス許可を認める
KEY_CREATE_LINK
シンボルリンクを作成するアクセス許可を認める
KEY_EXECUTE
読み出し専用にアクセスを制限する
[Home][C++言語]Borland C++ Bulder