[ 前のページ ]
[ 次のページ ]
[ 目次 ]
[ 索引 ]
[ DOC Home ]
この章では,OpenVMS Registryの$REGISTRY システム・サービスと$REGISTRYWシステム・サービスについて説明します。
$REGISTRYシステム・サービスと$REGISTRYWシステム・サービスは,OpenVMS Registry データベース・サーバへのインタフェースです。$REGISTRY サービスを使用すると,OpenVMS Registryデータベースに登録されているキー, サブキー, 値の表示,更新,設定を行うことができます。
$REGISTRYサービスでは,同期操作と非同期操作の両方がサポートされます。 非同期完了の場合は,Registry ($REGISTRY)システム・サービスを使用します。 同期完了の場合は,Registry and Wait ($REGISTRYW)システム・ サービスを使用します。$REGISTRYWシステム・サービスは$REGISTRY システム・サービスとほとんど同じ機能を実行しますが,要求された操作が完了した後で呼び出しプロセスに制御が返されます。 システム・サービスの終了の詳細については,Synchronize ($SYNCH) システム・サービスを参照してください。
このシステム・サービスは64ビット互換です。
SYS$REGISTRY [efn], func, 0, itmlst, [iosb or iosa_64], [astadr or astadr_64], [astprm or astprm_64] SYS$REGISTRYW [efn], func, 0, itmlst, [iosb or iosa_64], [astadr or astadr_64], [astprm or astprm_64]
OpenVMS 使用法: ef_number type: longword (unsigned) access: read only mechanism: by value
EFN$C_ENF
になります。イベント・
フラグは$REGISTRYで最初にクリアされ,操作が完了したときにセットされます。
OpenVMS 使用法: function_code type: longword (unsigned) access: read only mechanism: by value
$REGISTRYの呼び出しには機能コードを1つだけ指定できます。どの機能コードを呼び出す場合も, itmlst引数に追加情報を指定しなければなりません。
OpenVMS 使用法: item_list3 or item_list_64b type: longword (unsigned) access: read only mechanism: by reference
一部の機能コードでは,1回の呼び出しに複数の操作を指定できます。
この場合,各アイテム・コード・セットの間にREG$_
SEPARATOR
アイテム・コードを指定しなければなりません。
REG$_SEPARATOR
アイテム・コードで区切られた各要求にアイテム・
コードを指定する順序は任意です。
アイテム・コードは入力パラメータまたは出力パラメータとして指定できます。 入力パラメータは機能の変更,コンテキストの設定,返す情報の指定を行います。 出力パラメータは要求された情報を返します。item-list- 3リストの場合は,リストの最後にロングワードの0を指定しなければなりません。item-list-64b リストの場合は,リストの最後にクォドワードの0 を指定しなければなりません。
図 10-1はitem-list-3記述子の構造を示しています。
図 10-2はitem-list-64b記述子の構造を示しています。
表 10-1はアイテム記述子フィールドの定義を示しています。
記述子フィールド | 定義 |
---|---|
Buffer length | バッファの長さを指定するワード。 バッファは,$REGISTRYで使用される情報を渡すか,または$REGISTRY からの情報を受け取る場所である。必要なバッファの長さは,指定するアイテム・ コードに応じて異なる。各アイテム・コード記述に必要な長さを指定する。 |
Item code | バッファ内に現在格納されている情報のタイプを示すシンボリック・ コード, またはバッファに返されたシンボリック・コードを格納したワード。 buffer addressフィールドはバッファの場所を示す。 |
Buffer address | 情報の受け渡しで使用されるバッファのアドレスが格納されているロングワード。 |
Return length address | $REGISTRYから返された情報の実際の長さ( バイト数)を指定するワードのアドレスが格納されているロングワード。 情報はbuffer addressフィールドで示されるバッファに格納される。 このフィールドは出力アイテム・リスト・エントリにだけ適用され, 入力エントリの場合は0でなければならない。return length addressが0の場合は無視される。 |
OpenVMS 使用法: status_block type: buffer access: write only mechanism: by reference
SS$_NORMAL
またはSS$_REGERROR
になります。
各操作の戻り状態はREG$_RETURNSTATUS
アイテム・コード(指定されている場合)
に返されます。iosb引数は$REGISTRYの状態ブロックのアドレスです。
iosb引数を指定した場合は,$REGISTRYの実行が開始されるときに, クォドワードのI/O状態ブロックがクリアされます。
iosb引数は省略してもかまいませんが,次の理由により,なるべく指定してください。
$SYNCH
システム・サービスを使用する場合は,I/O状態ブロックは
$SYNCH
の必要な引数になります。
R0に返される条件値と,I/O状態ブロックに返される条件値は,$REGISTRY サービスへの呼び出しに関して異なる情報を提供します。R0に返される条件値は, サービスの呼び出し自体が正常終了したのか,異常終了したのかに関する情報を示します。I/O 状態ブロックに返される条件値は,サービス操作が正常終了したのか, 異常終了したのかに関する情報を示します。
$REGISTRYへの呼び出しが正常終了したのか,異常終了したのかを正確に判断するには, 最初にR0に返された条件値を確認しなければなりません。 R0に正常終了を示す値が格納されている場合は,I/O状態ブロックの条件値を確認しなければなりません。
表 10-2はアイテム記述子フィールドの定義を示しています。
記述子フィールド | 定義 |
---|---|
Status | $REGISTRYサービスの最終状態を指定するロングワード。1
つの機能コードに対して複数の操作を要求した場合は,
SS$_NORMAL またはSS$_REGERROR
がiosbに返される。このフィールドは操作を開始するときに,0に設定される。
|
Reserved | 予約されているロングワード。 |
OpenVMS 使用法: ast_procedure type: procedure value access: call without stack unwinding mechanism: by reference
$REGISTRYサービスの呼び出しが正常終了しなかった場合(つまり,エラーが直ちに戻された場合) は,ASTルーチンは実行されません。
OpenVMS 使用法: user_arg type: longword (unsigned) access: read only mechanism: by value
$REGISTRYサービスでは,キーに対するハンドルを格納するためにプロセスP1 空間を使用します。$REGISTRYサービスはIPL 0で呼び出さなければならず,AST 要求を配布するためにシステム・ダイナミック・メモリを必要とします。
SS$_ACCVIO |
引数の1 つを読み込みまたは書き込みできません。 |
SS$_BADPARAM | 機能コードまたはアイテム・ リスト・コードの1つが不正です。 |
SS$_EXASTLM | AST リミットを超えました。 |
SS$_EXBYTLM | バイト・カウント・クォータを超えました。 |
SS$_ILLEFC
| イベント・フラグ番号が不正です。 |
SS$_INSFARG | 指定された引数の数が不足しています。 |
SS$_INSFMEM | ダイナミック・メモリが不足しています。 |
SS$_NORMAL |
正常終了。 |
SS$_TOO_MANY_ARGS | 引数の数が多すぎます。 |
REG$_ACCESSDENIED | キーに対して要求されたアクセスが拒否されました。 |
REG$_BADFILEVER | ファイル・ バージョン番号が不正です。 |
REG$_BUFFEROVF | バッファ・オーバフロー。 |
REG$_CANTCLEANVOLSEG
| レジストリの揮発性セグメントを消去できません。 |
REG$_CANTCONVCS
| コード・セット変換エラー。 |
REG$_CANTOPENOUTFILE | 指定された出力ファイルを開くことができません。 |
REG$_DBACCESS | レジストリ・データベース・ オブジェクトにアクセスできません。 |
REG$_DBALREADYLOADED | データベースはすでにロードされています。 |
REG$_DBCREATE | レジストリ・データベースを作成できません。 |
REG$_DBCSMISMATCH
| データベース・チェックサムの不一致:格納値= !XL 計算値= !XL |
REG$_DBFIND
| レジストリ・データベースを見つけることができません。 |
REG$_DBFULL
| レジストリ・データベースが満杯です。 |
REG$_DBLOAD | レジストリ・ データベースをロードできません。 |
REG$_DBNOTYETLOADED | データベースはまだロードされていません。 |
REG$_DBVERMISMATCH | データベース・ バージョンの不一致:現在のバージョン= V!UW.!UWデータベース= V!UW.!UW |
REG$_DELROOTKEY
| ルート・キーが削除されました。 |
REG$_DOUBLEDEALLOC | 構造はすでにフリー・ リストに登録されています。 |
REG$_DTMUTEXERROR | DECthreads ミューテックスロック/アンロック・エラー。 |
REG$_DTMUTEXINIT | DECthreadsミューテックス初期化エラー!UL |
REG$_DTMUTEXLOCK | DECthreadsミューテックス・ ロック・エラー!UL |
REG$_DTMUTEXLOCKED | DECthreadsミューテックスは別のスレッドによってすでに保有されています。 |
REG$_DTMUTEXUNLOCK |
DECthreadsミューテックス・アンロック・エラー!UL |
REG$_DTRWLOCKINIT |
DECthreads読み込み/書き込みロック初期化エラー!UL |
REG$_DTRWLOCKLOCK |
DECthreads読み込み/書き込みロック・エラー!UL |
REG$_DTRWLOCKUNLOCK |
DECthreads読み込み/書き込みアンロック・エラー!UL |
REG$_DUPLREQUEST |
作業中のハッシュ・テーブル挿入で重複する要求が検出されました。 |
REG$_EXQUOTA
| レジストリ・ファイル・クォータまたはページ・ファイル・ クォータを超えました。 |
REG$_FILECREATE | !AZ!AZの作成でエラーが発生しました。 |
REG$_FILENAMEINVAL
| ファイル名が不正です。 |
REG$_FILEOPEN | !AZ!AZを開くときにエラーが発生しました。 |
REG$_FILEREADEOF | ファイルの末尾をこえて読み込もうとしました。FTE !XL |
REG$_FNAMMISMATCH | 物理/論理ファイル名の不一致; FTE=!AZ LTE=!AZ |
REG$_FSOCORRUPT | ファイルにはすでに破損フラグが付いています。FSO: !XL !XL |
REG$_FSOFILEINDEX | FSO: !XL !XLのファイル・インデックスが不正です。 |
REG$_FSOOFFSET | FSO: !XL !XL のオフセットが不正です。 |
REG$_FSOSEGNUMBER | FSO: !XL !XLのセグメント番号が不正です。 |
REG$_FSOSEGREADERR | FSO: !XL !XLでセグメントの読み込みエラーが発生しました。 |
REG$_FTEALLOC | ファイル・テーブル・エントリ!XL を!AZに対して割り当てるときにエラーが発生しました。 |
REG$_FTEALREADYEXIST |
ファイル!AZ!AZを作成できません。ファイルはすでに存在します。 |
REG$_FTEALREADYOPEN
| ファイルはすでに開かれています。 |
REG$_FTEDUPNAME | ファイル・ テーブル・エントリの割り当てエラー;ファイル名が重複します。 |
REG$_FTEINSUFFINFO
| 指定されたファイル・テーブル・エントリは割り当てられていません。 |
REG$_FTEINUSE | ファイル・テーブル・エントリの割り当てエラー, エントリは使用中です。 |
REG$_FTENOTEXIST | 指定されたファイル・ テーブル・エントリは存在しません。 |
REG$_FTENOTOPEN | 指定されたファイルは開かれていません。 |
REG$_FTIMISMATCH | 物理ファイル・インデックスの不一致; LTE = !XL ,FTE = !XL |
REG$_HASLINK | キーに別のキーへのリンクがあります。 |
REG$_HAVESUBKEYS
| サブキーのあるキーを削除することはできません。 |
REG$_INTERNERR
| レジストリの内部エラー。 |
REG$_INVCACHEACTION | キャッシュ・ アクション・パラメータが不正です。 |
REG$_INVCREDENTIALS | NT 資格情報が不正です。 |
REG$_INVDATA | データ値が不正です。 |
REG$_INVDATATYPE | データ・ タイプ・パラメータが不正です。 |
REG$_INVFUNCCODE | 機能コードが不正です。 |
REG$_INVKEYFLAGS
| キー・フラグが不正です。 |
REG$_INVKEYID | キーが存在しないか, または不正なキーIDが指定されました。 |
REG$_INVKEYNAME |
キー名が不正です。 |
REG$_INVLINK | リンクまたはリンク・タイプが不正です。 |
REG$_INVLINKPATH
| リンク・パスが不正です。 |
REG$_INVLOG | ログ・ファイルが不正です。 |
REG$_INVLOGREC
| ログ・レコードが不正です。 |
REG$_INVPARAM | パラメータが不正です。 |
REG$_INVPATH
| キー・パスが不正です。 |
REG$_INVSECDESCRIPTOR | セキュリティ記述子が不正です。 |
REG$_INVSECPOLICY | セキュリティ・ポリシー・ パラメータが不正です。 |
REG$_INVSEGNUM | セグメント番号が不正です。 |
REG$_INVVOLROOTKEY
| 揮発性ルート・キーを使用して新しいファイルを作成することはできません。 |
REG$_IOREADERR | ブロック!ULで長さ!ULのディスク読み込みエラーが発生しました。 |
REG$_IOWRITERR | ブロック!UL で長さ!ULのディスク書き込みエラーが発生しました。 |
REG$_IPCCONACC | IPC 接続受諾エラー: !XL |
REG$_IPCCONREJ | IPC接続拒否エラー: !XL |
REG$_IPCDCLAST | IPC は同期完了のためにASTを宣言できません。!XL |
REG$_IPCOPEASS | IPC関連付けオープン・ エラー: !XL |
REG$_IPLTOOHIGH | IPL 0より上の呼び出しプロセスはこのサービスを呼び出すことができません。 |
REG$_KEYCHANGED | キーまたはサブキーが変更されています。 |
REG$_KEYEXIST | キーはすでに存在します。 |
REG$_KEYLOCKED
| キーは別のスレッドによってロックされています。 |
REG$_KEYNAMEEXIST
| キー名はすでに存在します。 |
REG$_LOGFILETABFULL | 論理ファイル・ テーブルが満杯です。 |
REG$_LTENOTEXIST | 指定された論理ファイル・テーブル・ エントリは存在しません。 |
REG$_MOREDATA | 提供されたバッファが小さすぎるため, 要求されたデータを格納できません。 |
REG$_NOBLOCKFOUND | レジストリ・ データベースに使用できるブロックが残っていません。 |
REG$_NOKEY | 指定されたキーは存在しません。 |
REG$_NOMEMORY | メモリ不足。 |
REG$_NOMOREITEMS | 指定されたキーに対するアイテムはこれ以上ありません。 |
REG$_NOMORESEG | 使用できるセグメントはこれ以上ありません。 |
REG$_NOMORESUBSTRING | 部分文字列を見つけることができません。 |
REG$_NOPATHFOUND | パスを見つけることができません。 |
REG$_NORESPONSE
| OpenVMS Registryサーバは使用できない状態です。 |
REG$_NOSUCHFILE | このようなファイルは存在しません。 |
REG$_NOTROOTKEY
| ルート・キー・インデックスが不正です。 |
REG$_NOTSUPPORTED | 機能コード, アイテム・コード,アイテム値のいずれかがサポートされません。 |
REG$_NOVALUE
| 指定された値は存在しません。 |
REG$_OBJWITHLINK | 削除されたキーまたは値を指すリンクがあります。 |
REG$_REQRECEIVED | キー変更要求の通知を受け取りました。 |
REG$_RESERVED | 予約キーまたは値を削除/ 変更することはできません。 |
REG$_ROOTINSFILE | ルート・ ファイル内のファイル・リストが不足しています。 |
REG$_RUIDMISMATCH |
ルート・キーUIDの不一致; LTE = !@XQ !@XQ;ルート・キー= !@XQ !@XQ |
REG$_SECVIO
| このキーが最後に開かれたときに指定されたセキュリティ・ アクセス方式に違反します。 |
REG$_SEGREADERR | ファイル!AZのセグメント!UL の読み込みでエラーが発生しました。 |
REG$_STRINGTOOLONG | 入力文字列が長すぎます。 |
REG$_STRINGTRUNC | 出力バッファが小さすぎるため, 変換された文字列を格納できません。 |
REG$_SVRVERMISMATCH | バージョンの不一致: サーバ= V!UL.!ULデータベース= V!UL.!UL |
REG$_SVRSHUTDOWN |
サーバのシャットダウン中です。 |
REG$_TOOMANYOPENKEY | 開かれているキーの数が多すぎます。 一部のキーを閉じてください。 |
REG$_UNKTHRREQ
| スレッド要求コードが不明です。 |
REG$_VALUEEXIST | 値はすでに存在します。 |
REG$_VOLMISMATCH
| 揮発性キーに対して不揮発性サブキーを作成することはできません。 |
表 10-3は,機能コードと各コードの簡単な説明, その機能を実行するのに必要なOpenVMS Registryライト識別子を示しています。 各アイテム・ コードの詳細については,この章のアイテム・コードを参照してください。
有効なNTアクセス・トークンを提供せず,SYSPRV
特権もない場合は,OpenVMS Registry
ライト識別子が必要です。
REG$UPDATE
識別子が与えられている場合は,表 10-3
に示されているすべての機能を実行できます。
機能コード | 識別子 | 説明 |
---|---|---|
REG$FC_CLOSE_KEY
| REG$LOOKUP | 開かれているキーまたはサブキーを閉じる。 |
REG$FC_CREATE_KEY |
REG$UPDATE | サブキーを作成して開く。 |
REG$FC_DELETE_KEY
| REG$UPDATE | サブキーをキーから削除する。 |
REG$FC_DELETE_VALUE | REG$UPDATE
| 値をキーから削除する。 |
REG$FC_ENUM_KEY |
REG$LOOKUP | キーのサブキーを一覧表示する。 |
REG$FC_ENUM_VALUE
| REG$LOOKUP | キーの値を一覧表示する。 |
REG$FC_FLUSH_KEY | REG$UPDATE
| キーのすべての情報をディスクにバックアップする。 |
REG$FC_MODIFY_KEY
| REG$UPDATE | キーを変更する。 |
REG$FC_MODIFY_TREE_KEY | REG$UPDATE
| キーとそのすべてのサブキーを変更する。 |
REG$FC_NOTIFY_CHANGE_KEY_VALUE
| REG$UPDATE | キーまたは値が変更されたときに, そのことを通知する。 |
REG$FC_OPEN_KEY |
REG$LOOKUP | キーまたはサブキーを開く。 |
REG$FC_QUERY_KEY
| REG$LOOKUP | キーに関する情報を取り込む。 |
REG$FC_QUERY_VALUE | REG$LOOKUP
| 値に関する情報を取り込む。 |
REG$FC_SEARCH_TREE_DATA |
REG$LOOKUP | キーとそのサブキーの値データを検索する。 |
REG$FC_SEARCH_TREE_KEY | REG$LOOKUP
| キーとそのサブキーの名前を検索する。 |
REG$FC_SEARCH_TREE_VALUE |
REG$LOOKUP | キーとそのサブキーの値を検索する。 |
REG$FC_SET_VALUE | REG$UPDATE |
値名に関連付けられているデータを変更する。 |
REG$_KEYID
が定義済みキーを示す場合は,システムはこの要求を無視し,
正常終了を返します。
次のいずれかのアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_KEYID
| 必須 | 入力 |
REG$_RETURNSTATUS | 省略可能 | 出力 |
REG$_KEYID
によって指定されるキーの下に新しいサブキーを作成します。
キーが存在する場合,
そのキーは変更されません。
REG$_KEYRESULT
アイテム・コードを指定した場合は,指定したサブキーが開かれます。
結果はREG$_DISPOSITION
アイテム・コード・バッファに返されます。
この機能コードを使用すると,複数の要求を$REGISTRYサービスに対する1
つの呼び出しにまとめて指定できます。この複数要求機能を使用するには,
REG$_SEPARATOR
アイテム・コードを使用して,現在の要求のアイテム・
コード・セットの最後を示し,その後に別の要求が続くことを指定しなければなりません。
キーの値を設定するには,REG$FC_SET_VALUE
機能コードを指定して$REGISTRY
サービスを呼び出します。
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_CACHEACTION | 省略可能 | 入力 |
REG$_CLASSNAME
| 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_DISPOSITION | 省略可能 | 出力 |
REG$_KEYFLAGS | 省略可能 | 入力 |
REG$_KEYID |
必須 | 入力 |
REG$_KEYRESULT | 省略可能 | 出力 |
REG$_LINKPATH
| 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_LINKTYPE | 省略可能 | 入力 |
REG$_RETURNSTATUS
| 省略可能 | 出力 |
REG$_SECACCESS | 省略可能 | 入力 |
REG$_SECURITYPOLICY | 省略可能 | 入力 |
REG$_SEPARATOR
| 省略可能 | なし |
REG$_SUBKEYNAME | 必須 | 入力(Unicode文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_VOLATILE
| 省略可能 | 入力 |
REG$_LINKPATH
アイテム・コードを指定する場合は,OpenVMS Registry
にすでに定義されているキー・
パスを指すコードを指定しなければなりません。この条件を満たさないと,
REG$_INVALIDPATH
エラーが返されます。
REG$_CACHEACTION
アイテム・コードを指定しないと,親キーと同じキャッシュ・
アクション値を使用して新しいキーが作成されます。
REG$_VOLATILE
アイテム・コードとREG$_
SECURITYPOLICY
アイテム・コードに同じ規則が適用されます。
この機能コードを使用すると,複数の要求を$REGISTRYサービスに対する1
つの呼び出しにまとめることができます。この複数要求機能を使用するには,
REG$_SEPARATOR
アイテム・コードを使用して,現在の要求のアイテム・
コード・セットの最後を示し,その後に別の要求が続くことを指定しなければなりません。
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_KEYID
| 必須 | 入力 |
REG$_KEYPATH | 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_RETURNSTATUS
| 省略可能 | 出力 |
REG$_SEPARATOR | 省略可能 | なし |
REG$_SUBKEYNAME | 必須 | 入力(Unicode 文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
この機能コードを使用すると,複数の要求を$REGISTRYサービスに対する1
つの呼び出しにまとめることができます。この複数要求機能を使用するには,
REG$_SEPARATOR
アイテム・コードを使用して,現在の要求のアイテム・
コード・セットの最後を示し,その後に別の要求が続くことを指定しなければなりません。
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_KEYID
| 必須 | 入力 |
REG$_KEYPATH | 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_RETURNSTATUS
| 省略可能 | 出力 |
REG$_SEPARATOR | 省略可能 | なし |
REG$_VALUENAME | 必須 | 入力 |
REG$_SUBKEYINDEX
アイテム・コードに指定します。
キーのすべてのサブキーを列挙するには,REG$FC_ENUM_KEY
機能コードを使用して$REGISTRYサービスを繰り返し呼び出さなければなりません。
REG$_SUBKEYINDEX
を最初は0に設定して,要求から
REG$_NOMOREITEMS
エラーが返されるまで,カウントに1
を加算します。
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_CACHEACTION | 省略可能 | 出力 |
REG$_CLASSNAME
| 省略可能 | 出力(Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_KEYFLAGS | 省略可能 | 出力 |
REG$_KEYID
| 必須 | 入力 |
REG$_KEYPATH | 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_LASTWRITE
| 省略可能 | 出力 |
REG$_LINKCOUNT | 省略可能 | 出力 |
REG$_LINKPATH | 省略可能 | 出力(Unicode 文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_LINKTYPE
| 省略可能 | 出力 |
REG$_RETURNSTATUS | 省略可能 | 出力 |
REG$_SECURITYPOLICY | 省略可能 | 出力 |
REG$_SUBKEYINDEX
| 必須 | 入力 |
REG$_SUBKEYNAME | 省略可能 | 出力(Unicode文字列を示すポインタ。Unicode文字は4 バイトの長さである。) |
REG$_VOLATILE | 省略可能 | 出力 |
REG$_VALUEINDEX
アイテム・コードに指定します。
キーのすべての値を列挙するには,アプリケーションでREG$FC_
ENUM_VALUE
機能コードを使用して$REGISTRYサービスを繰り返し呼び出さなければなりません。
REG$_VALUEINDEX
の値を最初は0
に設定して,要求からREG$_NOMOREITEMS
エラーが返されるまで,
カウントに1を加算します。
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_DATAFLAGS
| 省略可能 | 出力 |
REG$_DATATYPE | 省略可能 | 出力 |
REG$_KEYID | 必須 | 入力 |
REG$_KEYPATH | 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode文字は4 バイトの長さである。) |
REG$_RETURNSTATUS | 省略可能 | 出力 |
REG$_VALUEDATA
| 省略可能 | 出力 |
REG$_VALUEINDEX | 必須 | 入力 |
REG$_VALUENAME
| 省略可能 | 出力 |
REG$_VOLATILE | 省略可能 | 出力 |
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_KEYID
| 必須 | 入力 |
REG$_KEYPATH | 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_RETURNSTATUS
| 省略可能 | 出力 |
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_CACHEACTION | 省略可能 | 入力 |
REG$_CLASSNAME
| 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_KEYFLAGS | 省略可能 | 入力 |
REG$_KEYID
| 必須 | 入力 |
REG$_KEYPATH | 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_LINKPATH
| 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_LINKTYPE | 省略可能 | 入力 |
REG$_NEWNAME
| 省略可能 | 入力 |
REG$_RETURNSTATUS | 省略可能 | 出力 |
REG$_SECURITYPOLICY | 省略可能 | 入力 |
指定されたキーからリンクを削除するには,アドレスを0に設定して
REG$_LINKPATH
アイテム・コードを入力します。値またはサブキー(
またはその両方)があるキーにリンクを追加することはできません。
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_CACHEACTION | 省略可能 | 入力 |
REG$_CLASSNAME
| 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_KEYID | 必須 | 入力 |
REG$_KEYPATH
| 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_RETURNSTATUS | 省略可能 | 出力 |
REG$_SECURITYPOLICY | 省略可能 | 入力 |
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_FLAGSUBKEY | 必須 | 入力 |
REG$_KEYID |
必須 | 入力 |
REG$_KEYPATH | 省略可能 | 入力(Unicode 文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_NOTIFYFILTER
| 必須 | 入力 |
REG$_RETURNSTATUS | 省略可能 | 出力 |
REG$_KEYID
に指定されているキーが開かれます。
REG$_KEYID
に定義済みキー以外のキーが指定された場合は,
そのキーを再び開きます(キーを複製します)。
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_KEYID | 必須 | 入力 |
REG$_KEYRESULT | 必須 | 出力 |
REG$_KEYPATH | 省略可能 | 入力(Unicode 文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_RETURNSTATUS
| 省略可能 | 出力 |
REG$_SECACCESS | 必須 | 入力 |
REG$_SUBKEYNAME
| 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_CACHEACTION | 省略可能 | 出力 |
REG$_CLASSNAME
| 省略可能 | 出力(Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_CLASSNAMEMAX | 省略可能 | 出力 |
REG$_KEYFLAGS | 省略可能 | 出力 |
REG$_KEYID |
必須 | 入力 |
REG$_KEYPATH | 省略可能 | 入力(Unicode 文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_LASTWRITE
| 省略可能 | 出力 |
REG$_LINKCOUNT | 省略可能 | 出力 |
REG$_LINKPATH | 省略可能 | 出力(Unicode 文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_LINKTYPE
| 省略可能 | 出力 |
REG$_RETURNSTATUS | 省略可能 | 出力 |
REG$_SECURITYPOLICY | 省略可能 | 出力 |
REG$_SUBKEYNAMEMAX
| 省略可能 | 出力 |
REG$_SUBKEYSNUMBER | 必須 | 出力 |
REG$_VALUEDATAMAX | 省略可能 | 出力 |
REG$_VALUENAMEMAX
| 省略可能 | 出力 |
REG$_VALUENUMBER | 省略可能 | 出力 |
REG$_VOLATILE | 省略可能 | 出力 |
この機能コードを使用すると,複数の要求を$REGISTRYサービスに対する1
つの呼び出しにまとめることができます。この複数要求機能を使用するには,
REG$_SEPARATOR
アイテム・コードを使用して,現在の要求のアイテム・
コード・セットの最後を示し,その後に別の要求が続くことを指定しなければなりません。
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_DATAFLAGS
| 省略可能 | 出力 |
REG$_DATATYPE | 省略可能 | 出力 |
REG$_KEYPATH
| 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_KEYID | 必須 | 入力 |
REG$_LINKCOUNT
| 省略可能 | 出力 |
REG$_LINKPATH | 省略可能 | 出力(Unicode文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_LINKTYPE
| 省略可能 | 出力 |
REG$_RETURNSTATUS | 省略可能 | 出力 |
REG$_SEPARATOR | 省略可能 | なし |
REG$_VALUEDATA
| 省略可能 | 出力 |
REG$_VALUENAME | 必須 | 入力 |
REG$_VOLATILE
| 省略可能 | 出力 |
REG$_DATAFLAGS
アイテム・コード,またはREG$_
DATATYPE
アイテム・コードとREG$_VALUEDATA
アイテム・
コードの組み合わせ,またはこの3つのアイテム・コードの組み合わせです。
REG$_FLAGOPCODE
アイテム・コードは,REG$_
DATAFLAGS
アイテム・コードをデータベースとどのように照合するかを指定します(
REG$_FLAGOPCODE
アイテム・コードの詳細については,
アイテム・コードの説明を参照してください)。
一致するものが見つかると,そのたびに指定されたキーに対応するパス名が
REG$_PATHBUFFER
アイテム・コードに追加されます。値のパス名はUnicode
のNull文字を使用して区切ります。
アプリケーションで提供されたバッファが十分な大きさでないために,
検索されたすべての値パス名を格納できない場合は,SS$_
BUFFEROVF
エラー・メッセージがiosb引数に返され,操作を正常終了するのに必要な長さが
REG$_REQLENGTH
アイテム(
指定されている場合)に返されます。
REG$_KEYPATH
アイテム・コードで0個以上のサブキーを照合するには,
繰り返し記号(...)ワイルドカードを使用します(
たとえば,Hardware\...\disks
と指定すると,
Hardware
サブキーから始まり,disk
サブキーで終了し,その間に0個以上のサブキーのあるすべてのパスが検索されます)
。サブキー全体またはサブキーの一部だけを照合するには,
REG$_KEYPATH
アイテム・コードにアスタリスク(*)ワイルドカードを指定します。
キー名の中の1文字だけを照合するには,パーセント(%)
ワイルドカードをREG$_KEYPATH
アイテム・コードに指定します。
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_DATAFLAGS
| 省略可能 | 入力 |
REG$_DATATYPE | 省略可能 | 入力 |
REG$_FLAGOPCODE
| 省略可能 | 入力 |
REG$_KEYPATH | 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_KEYID
| 必須 | 入力 |
REG$_PATHBUFFER | 必須 | 出力 |
REG$_REQLENGTH
| 省略可能 | 出力 |
REG$_RETURNSTATUS | 省略可能 | 出力 |
REG$_VALUEDATA | 省略可能 | 入力 |
この機能コードの場合,指定できるキー・パスはUnicode文字列であり, 繰り返し記号(...),アスタリスク(*),パーセント(%)ワイルドカード文字を含むことができますが, 先頭にバックスラッシュ文字(\)を指定することはできません。
1つ以上のサブキーと一致することを指定するには,繰り返し記号(...)
ワイルドカードをREG$_KEYPATH
アイテム・コードに指定します(
たとえば,Hardware\...\disks
と指定すると,
Hardware
サブキーから始まり,disk
サブキーで終了し,
その間に0個以上のサブキーがあるすべてのパスが検索されます)
。サブキー全体またはサブキーの一部と一致することを指定するには,
アスタリスク(*)ワイルドカードをREG$_KEYPATH
アイテム・コードに指定します。キー名の1文字と一致することを指定するには,
パーセント(%)ワイルドカードをREG$_KEYPATH
アイテム・
コードに指定します。
次の例は正しいキー・パスを示しています。
hardware\system\*\disk%%
一致するものが見つかるたびに,指定されたキー識別子を基準にした相対パス名が
REG$_PATHBUFFER
アイテム・コードに追加されます。
サブキーのパス名はUnicodeのNull文字(4バイト)で区切られます。
アプリケーションが提供したバッファが十分な大きさでないために,
検索したサブキーのすべてのパス名を格納できない場合は,SS$_
BUFFEROVF
エラー・メッセージがiosb引数に返され,操作を正常終了するのに必要な長さが
REG$_REQLENGTH
アイテム(
指定されている場合)に返されます。
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_KEYID
| 必須 | 入力 |
REG$_KEYPATH | 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_PATHBUFFER
| 必須 | 出力 |
REG$_REQLENGTH | 省略可能 | 出力 |
REG$_RETURNSTATUS | 省略可能 | 出力 |
この機能コードの場合,指定できるキー名はUnicode文字列であり,繰り返し記号(...) ,アスタリスク(*),パーセント(%)ワイルドカード文字を含むことができますが, 先頭にバックスラッシュ文字(\)を指定することはできません。
1つ以上のサブキーと一致することを指定するには,繰り返し記号(...)
ワイルドカードをREG$_KEYPATH
アイテム・コードに指定します(
たとえば,Hardware\...\disks
と指定すると,
Hardware
サブキーから始まり,disk
サブキーで終了し,
その間に0個以上のサブキーがあるすべてのパスが検索されます)
。サブキー全体またはサブキーの一部と一致することを指定するには,
アスタリスク(*)ワイルドカードをREG$_KEYPATH
アイテム・コードに指定します。キー名の1文字と一致することを指定するには,
パーセント(%)ワイルドカードをREG$_KEYPATH
アイテム・
コードに指定します。
次の例は正しいキー・パスを示しています。
hardware\system\...
この機能コードの場合,指定できる名前はUnicode文字列であり,アスタリスク(*) およびパーセント(%)ワイルドカード文字を含むことができます。
一致するものが見つかるたびに,指定されたキー識別子を基準にした相対パス名が
REG$_PATHBUFFER
アイテム・コードに追加されます。
サブキーのパス名はUnicodeのNull文字(4バイト)で区切られます。
アプリケーションが提供したバッファが十分な大きさでないために,
検索したサブキーのすべてのパス名を格納できない場合は,SS$_
BUFFEROVF
エラー・メッセージがiosb引数に返され,操作を正常終了するのに必要な長さが
REG$_REQLENGTH
アイテム(
指定されている場合)に返されます。
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_KEYPATH
| 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_KEYID | 必須 | 入力 |
REG$_PATHBUFFER
| 必須 | 出力 |
REG$_REQLENGTH | 省略可能 | 出力 |
REG$_RETURNSTATUS | 省略可能 | 出力 |
REG$_VALUENAME
| 必須 | 入力 |
この機能コードを使用すると,複数の要求を$REGISTRYサービスに対する1
つの呼び出しにまとめることができます。この複数要求機能を使用するには,
REG$_SEPARATOR
アイテム・コードを使用して,現在の要求のアイテム・
コード・セットの最後を示し,その後に別の要求が続くことを指定しなければなりません。
値がリンクに設定される場合は,REG$M_IGNORE_LINKS
機能コード修飾子を指定した場合を除き,
リンクが有効であるかどうか確認されます。
次のアイテム・コードを指定します。
アイテム・コード | 必須 | パラメータの種類 |
---|---|---|
REG$_DATAFLAGS
| 省略可能 | 入力 |
REG$_DATATYPE | 省略可能 | 入力 |
REG$_KEYID
| 必須 | 入力 |
REG$_KEYPATH | 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode文字は4バイトの長さである。) |
REG$_LINKPATH
| 省略可能 | 入力(Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_LINKTYPE | 省略可能 | 入力 |
REG$_RETURNSTATUS
| 省略可能 | 出力 |
REG$_SEPARATOR | 省略可能 | なし |
REG$_VALUEDATA | 省略可能 | 入力 |
REG$_VALUENAME
| 省略可能 | 入力 |
アイテム・コード | 入力/出力 | データ・タイプ |
---|---|---|
REG$_CACHEACTION | 入力,出力 | ロングワード |
REG$_CLASSNAME
| 入力,出力 | (Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_CLASSNAMEMAX | 出力 | ロングワード |
REG$_DATAFLAGS | 入力,出力 | クォドワード |
REG$_DATATYPE
| 入力,出力 | ロングワード |
REG$_DISPOSITION |
出力 | ロングワード |
REG$_FILELOAD | 入力 | Unicode文字列 |
REG$_FLAGOPCODE | 入力 | ロングワード |
REG$_FLAGSUBKEY
| 入力 | ロングワード |
REG$_KEYPATH | 入力 | (Unicode文字列を示すポインタ。Unicode文字は4 バイトの長さである。) |
REG$_KEYFLAGS | 入力,出力 | ロングワード |
REG$_KEYID
| 入力,出力 | ロングワード |
REG$_KEYRESULT |
出力 | ロングワード |
REG$_LASTWRITE | 出力 | クォドワード |
REG$_LINKCOUNT | 出力 | ロングワード |
REG$_LINKPATH
| 入力,出力 | (Unicode文字列を示すポインタ。Unicode 文字は4バイトの長さである。) |
REG$_LINKTYPE | 入力, 出力 | ロングワード |
REG$_NEWNAME | 入力 | Unicode文字列 |
REG$_NOTIFYFILTER | 入力 | ロングワード |
REG$_PATHBUFFER
| 出力 | バッファ |
REG$_REQLENGTH | 出力 | ロングワード |
REG$_RETURNSTATUS | 出力 | ロングワード |
REG$_SECACCESS
| 入力 | ロングワード |
REG$_SECURITYPOLICY |
入力,出力 | ロングワード |
REG$_SEPARATOR | なし | なし |
REG$_SUBKEYINDEX
| 入力 | ロングワード |
REG$_SUBKEYNAME | 入力,出力 | (Unicode文字列を示すポインタ。Unicode文字は4 バイトの長さである。) |
REG$_SUBKEYNAMEMAX | 出力 | ロングワード |
REG$_SUBKEYSNUMBER
| 出力 | ロングワード |
REG$_VALUEDATA | 入力,出力 | バッファ |
REG$_VALUEDATAMAX | 出力 | ロングワード |
REG$_VALUEINDEX
| 入力 | ロングワード |
REG$_VALUENAME | 入力, 出力 | Unicode文字列 |
REG$_VALUENAMEMAX | 出力 | ロングワード |
REG$_VALUENUMBER | 出力 | ロングワード |
REG$_VOLATILE
| 入力,出力 | ロングワード |
REG$_CACHEACTION
アイテム・コードは入力アイテム・
コードです。このアイテム・コードは,指定されたオブジェクトに関する情報をディスクに直ちに書き込まなければならないかどうかを指定するロングワード・
フラグです。次のいずれかの値です。
キャッシュ値 | 説明 |
---|---|
REG$K_WRITEBEHIND | 指定されたオブジェクトに関する情報をディスクに後で書き込む( デフォルト) 。 |
REG$K_WRITETHRU
| 指定されたオブジェクトに関する情報をディスクに直ちに書き込む。 |
REG$_HKEY_CLASSES_ROOT
,
REG$_HKEY_LOCAL_MACHINE
,
REG$_HKEY_USERS
)は,
REG$K_WRITEBEHIND
に等しい値に設定されます。
REG$_CLASSNAME
アイテム・コードは,機能コードに応じて,
入力アイテム・コードまたは出力アイテム・コードになります。
クラス名はキーの情報フィールドです。たとえば,オブジェクトのタイプはクラス名です。
このアイテム・コードはUnicode文字列で構成できます。Unicode
文字は4バイト長です。
REG$_CLASSNAMEMAX
アイテム・コードは出力アイテム・
コードです。サブキーのクラス名を指定する最長の文字列の長さ(バイト数)
が格納されます。
REG$_DATAFLAGS
アイテム・コードは,機能コードに応じて,
入力アイテム・コードまたは出力アイテム・コードになります。
これは64ビットのアプリケーションに依存する値データ・フラグです。
REG$_DATATYPE
アイテム・コードは,機能コードに応じて,
入力アイテム・コードまたは出力アイテム・コードになります。これは,
値データとして格納される情報のタイプを指定するか,または指定された値データ・
コンポーネントの情報のタイプを格納します。値は次のいずれかです。
タイプ・コード | 説明 |
---|---|
REG$K_BINARY | バイナリ・データ |
REG$K_DWORD |
32ビット数値 |
REG$K_EXPAND_SZ | Unicode文字列 |
REG$K_MULTI_SZ |
REG$K_SZ 文字列を連結した配列 |
REG$K_NONE | 定義されている値タイプなし( デフォルト) |
REG$K_QWORD | 64ビット数値 |
REG$K_SZ | 最後がNullのUnicode文字列 |
REG$K_EXPAND_SZ
とREG$K_SZ
の相違点
REG_SZ
)またはexpandable string
(REG_EXPAND_SZ
)形式を使用して書き込まれます。拡張可能文字列は通常,
人間が判読可能なテキストですが,文字列がアプリケーションから呼び出されるときに置換される変数が含まれることもあります。
たとえば,Windows NTシステムでは,値エントリ
%SystemRoot%\System32\Bootok.exe
の%SystemRoot%
は変数の拡張可能な部分です。この部分は,Windows NT
システム・ファイルが格納されているディレクトリの実際の場所に置き換えられます。
REG$_DISPOSITION
アイテム・コードは出力アイテム・
コードです。これはロングワードであり,値は次のいずれかです。
処置の値 | 説明 |
---|---|
REG$K_CREATENEWKEY | キーが存在しなかったので作成された。 |
REG$K_
OPENEXISTINGKEY | キーが存在し,開かれた。 |
REG$_FLAGOPCODE
アイテム・コードは入力アイテム・
コードです。これは,REG$_DATAFLAGS
入力アイテム・コードをOpenVMS Registry
データベース内のデータ・
フラグ・フィールドとどのような方法で照合するかを示すロングワード・
フラグです。値は次のいずれかです。
オペレータ・コード・オプション | 説明 |
---|---|
REG$K_ANY |
OpenVMS Registryデータベース内のデータ・
フィールドには,REG$_DATAFLAGS 入力アイテム・
コードのフラグが少なくとも1つ含まれていなければならない。
|
REG$K_EXACTMATCH
| REG$_DATAFLAGS 入力アイテム・コードは,OpenVMS Registry
データベース内のdata flags
フィールドと正確に一致しなければならない。 |
REG$K_EXCLUDE | OpenVMS Registryデータベース内のdata flags
フィールドには,REG$_DATAFLAGS 入力アイテム・コード内のフラグが含まれては
ならない。 |
REG$K_INCLUDE | OpenVMS Registryデータベース内のdata flags
フィールドには,
少なくともREG$_DATAFLAGS 入力アイテム・コード内のフラグが含まれなければならない。
|
REG$K_NOTANY | OpenVMS Registryデータベース内のデータ・
フィールドには,
REG$_DATAFLAGS 入力アイテム・コード内のどのフラグも含まれては
ならない。 |
REG$_FLAGSUBKEY
アイテム・コードは入力アイテム・
コードです。これはロングワードの論理値(Boolean)フィールドであり,
次のことを指定します。
REG$_KEYID
アイテム・コードは入力アイテム・コードです。
これはキー識別子を含むロングワードです。
REG$_KEYRESULT
アイテム・コードは出力アイテム・
コードです。これはキー識別子を受け取るロングワードです。キー識別子は,
REG$_KEYID
アイテム・コードを使用して,他のレジストリ呼び出しに渡すことができます。
REG$_KEYPATH
アイテム・コードは入力アイテム・コードです。
これはキー・パスを指定するUnicode文字列です。Unicode文字は4
バイト長です。
REG$_LASTWRITE
アイテム・コードは出力アイテム・
コードです。これは絶対時間を表すクォドワードであり,指定されたキーが最後に書き込まれた時刻(
値の変更を含む)を受け取ります。
REG$_LINKCOUNT
アイテム・コードは出力アイテム・
コードです。これはアイテムを参照するシンボリック・リンクの数を示すロングワードです。
REG$_LINKPATH
アイテム・コードは,機能コードに応じて,
入力アイテム・コードまたは出力アイテム・コードになります。これは指定されたキーのリンク先のキー・
パスを指定するUnicode文字列です。Unicode
文字は4バイト長です。
REG$_LINKTYPE
アイテム・コードは,機能コードに応じて,
入力アイテム・コードまたは出力アイテム・コードになります。これはリンク・
タイプを示すロングワードです。
リンク・タイプ | 説明 |
---|---|
REG$K_NONE | リンクなし(デフォルト) |
REG$K_SYMBOLICLINK
| シンボリック(論理)リンク |
REG$_NEWNAME
アイテム・コードは,キーの新しい名前を指定するUnicode
文字列です。
REG$_NOTIFYFILTER
アイテム・コードは入力アイテム・
コードです。これは,指定されたキーとそのサブキーおよび値に対して,
どの変更を報告するかを指定するロングワード・マスクです。次の値を任意の組み合わせで指定します。
値 | 説明 |
---|---|
REG$M_CHANGEATTRIBUTES | 指定されたキーまたはそのサブキーの属性の変更。 |
REG$M_CHANGELASTSET | 指定されたキーまたはそのサブキーの最終書き込み時刻の変更。 |
REG$M_CHANGENAME | 作成と削除も含めて, 指定されたキーまたはそのサブキーのキー名の変更。 |
REG$_FLAGSUBKEY
アイテム・コードが1に設定されている場合だけです。
REG$_PATHBUFFER
アイテム・コードは出力アイテム・
コードです。これは,UnicodeのNull文字(4バイト長)で区切られたキー・
パスまたは値パスの集合を受け取るバッファです(アイテム記述子の3番目のロングワードには,
バッファに書き込まれたバイト数が格納されます)
。
REG$_REQLENGTH
アイテム・コードは出力アイテム・
コードです。操作を正常終了するのに必要なバッファ・サイズ(バイト数)
を受け取るロングワードです。
REG$_RETURNSTATUS
アイテム・コードは出力アイテム・
コードです。指定された操作の最終終了状態を受け取るロングワードです。
詳細については,この章の返される条件値を参照してください。
REG$_SECACCESS
アイテム・コードは入力アイテム・
コードです。新しいキーにとって適切なセキュリティ・アクセスを指定するロングワード・
マスクです。次の値を任意に組み合わせて指定できます。
セキュリティ・アクセス・マスク | 説明 |
---|---|
REG$M_ALLACCESS
| 次のアクセス値の組み合わせ。
REG$K_CREATELINK
REG$K_CREATESUBKEY
REG$K_ENUMSUBKEYS
REG$K_NOTIFY
REG$K_QUERYVALUE
REG$K_SETVALUE
|
REG$M_CREATELINK |
シンボリック・リンクの作成を許可する。 |
REG$M_CREATESUBKEY | サブキーの作成を許可する。 |
REG$M_ENUMSUBKEYS
| サブキーの列挙を許可する。 |
REG$M_EXECUTE | 読み込みアクセスを許可する。 |
REG$M_NOTIFY
| 変更の通知を許可する。 |
REG$M_QUERYVALUE | サブキーのデータの問い合わせを許可する。 |
REG$M_READ | 次のアクセス値の組み合わせ。
REG$K_ENUMSUBKEYS
REG$K_QUERYVALUE
REG$K_NOTIFY
|
REG$M_SETVALUE |
値とデータの設定を許可する。 |
REG$M_WRITE | 次のアクセス値の組み合わせ。
REG$K_CREATESUBKEY
REG$K_SETVALUE
|
REG$_SECURITYPOLICY
アイテム・コードは入力アイテム・
コードです。キーに対して適用されるセキュリティ・ポリシーを指定するロングワードです。
値は次のとおりです。
ポリシーの設定 | 説明 |
---|---|
REG$K_POLICY_NT_40 | 最初のキーと要求されたキーに対してアクセス権が必要である( デフォルト) 。 |
REG$_SEPARATOR
アイテム・コードは空アイテム・コードです。
これは複数のアイテム・コードを区切るためのセパレータです。
この機能コードを使用すると,複数の要求を$REGISTRYサービスに対する1
つの呼び出しにまとめることができます。この複数要求機能を使用するには,
REG$_SEPARATOR
アイテム・コードを使用して,現在の要求のアイテム・
コード・セットの最後を示し,その後に別の要求が続くことを指定しなければなりません。
REG$_SUBKEYINDEX
アイテム・コードは入力アイテム・
コードです。検索するサブキーのインデックスを指定するロングワードです。
REG$_SUBKEYNAME
アイテム・コードは入力アイテム・
コードです。サブキーの名前を指定するUnicode文字列です。Unicode文字は4
バイト長です。
REG$_SUBKEYNAMEMAX
アイテム・コードは出力アイテム・
コードです。指定されたキーの最長のサブキー名の長さ(文字数)を受け取るロングワードです。
REG$_SUBKEYSNUMBER
アイテム・コードは出力アイテム・
コードです。指定されたキーに含まれているサブキーの数を受け取るロングワードです。
REG$_VALUEINDEX
アイテム・コードは入力アイテム・
コードです。指定されたキー内で検索する値のインデックスを指定するロングワードです。
値のインデックスは0から始まり,REG$_
VALUENUMBER
から返された数より1だけ少ない値まで可能です。
REG$_VALUEDATA
アイテム・コードは,機能コードに応じて,
入力アイテム・コードまたは出力アイテム・コードになります。OpenVMS Registry
に書き込まれる値データ・
コンポーネントが格納されるバッファであるか(入力),OpenVMS Registryからデータ値コンポーネントを受け取るバッファになります(
出力)。
REG$_VALUEDATAMAX
アイテム・コードは出力アイテム・
コードです。指定されたキーの最長のデータ・コンポーネント値の長さ(
バイト数)を受け取るロングワードです。
REG$_VALUENAME
アイテム・コードは,機能コードに応じて,
入力アイテム・コードまたは出力アイテム・コードになります。
値の名前を指定するUnicode文字列です。
REG$_VALUENAMEMAX
アイテム・コードは出力アイテム・
コードです。指定されたキーの最長の値名の長さ(文字数)を受け取るロングワードです。
REG$_VALUENUMBER
アイテム・コードは出力アイテム・
コードです。指定されたキーに含まれている値の数を受け取るロングワードです。
REG$_VOLATILE
アイテム・コードはアイテムの揮発性を示します。
出力として,オブジェクトの揮発性を返します。
OpenVMSでは,揮発性キーと揮発性値は,OpenVMS
Registryサーバを稼動しているすべてのノードがリブートされたときに失われます(
スタンドアロン・システムでは,揮発性キーと揮発性値は,
システムのリブート時に失われます)。
揮発性タイプ | 説明 |
---|---|
REG$K_CLUSTER | アイテムはクラスタのリブート時に削除される。 |
REG$K_NONE | アイテムは揮発性ではない(デフォルト)。 |
たとえば,REG$FC_CREATE_KEY
という機能に対して
REG$M_CASE_SENSITIVE
機能修飾子を指定できます。
このように機能と機能修飾子を組み合わせて使用すると,OpenVMS Registryに渡されるデータで大文字と小文字が区別されます。2
つの値はDEC Cでは,REG$M_CASE_SENSITIVE|REG$FC_
CREATE_KEY
として指定されます。
OpenVMS Registry機能修飾子はヘッダ・ファイル
REGDEF.H
に定義されています。
デフォルト設定では,キーまたは値が別のキーまたは値にシンボリック・ リンクで関連付けられている場合,システムはすべてのリンクを追跡し, 機能コードに指定された操作をリンクされているキーまたは値に対して実行します。
REG$M_IGNORE_LINKS
機能修飾子を指定すると,機能コードによって指定された操作は指定されたキーまたは値にだけ影響し,
リンク先のキーや値には影響しません。
デフォルト設定では,キーまたは値にシンボリック・リンクが設定されている場合は,
そのキーや値を削除できません。しかし,REG$M_
IGNORE_LINKS
機能修飾子を指定した場合は,キーまたは値は削除されます。
REG$_CACHEACTION
アイテム・コードの値とは無関係に,
ディスクに直ちに書き込みます。
[ 前のページ ]
[ 次のページ ]
[ 目次 ]
[ 索引 ]
[ DOC Home ]