IBM Books

参考


Web 注册表函数

Web 注册表是一个文件,由 Net.Data 维护此文件的一个关键字,允许您方便地 添加、检索和删除其中的条目。您可以在一个系统中创建多个 Net.Data Web 注册表。每个 注册表有自己的名称,可以包含多个条目。Net.Data 提供了一些函数,用于维护注册表及其 包含的条目。

限制:

DTWR_ADDENTRY


AIX HP-UX Linux OS/2 OS/390 OS/400 SCO SUN Win NT
X

X
X

X

目的

将一个条目添加至 Web 注册表。

格式

@DTWR_ADDENTRY(registry, registryVariable, registryData, index)

@DTWR_ADDENTRY(registry, registryVariable, registryData)

参数

表 187. DTWR_ADDENTRY 参数
数据类型 参数 用法 说明
字符串 registry IN 要向其中添加条目的注册表名称。
字符串 registryVariable IN 要添加的注册表条目中 registryVariable 字符串 部分的值。
字符串 registryData IN 要添加的注册表条目中 registryData 字符串 部分的值。
字符串 index IN 要添加的索引项中 registryVariable 字符串 索引部分的值。此参数是可选的。如果指定此参数,则将一个索引项添加到指定的注册表。

返回码

表 188. DTWR_ADDENTRY 返回码
返回码 说明
-1001 服务器不能处理 Net.Data 请求来分配内存。
1001 输入参数中包含一个空值。
1002 输入参数中包含一个由空终结字符组成的字符串值。
1003 在函数调用时传递的参数数目或者超过了允许的最大数目,或者小于该函数必需的最小数目。
1005 传递给函数调用的参数应该是一个字符串变量,但实际上是另一个类型的变量。
1007 参数中包含了一个无效值。
3003 Web 注册表内部函数无法向指定的注册表中添加条目, 因为指定的条目已经存在。
3005 Web 注册表内部函数无法使用指定的注册表,因为无法找到该注册表。
3006 Web 注册表内部函数无法创建指定的注册表, 因为注册表名称中的路径不存在。
3007 Web 注册表内部函数无法完成指定的操作, 因为请求者无权对指定的注册表进行操作。

例 1

@DTWR_ADDENTRY("Myregistry", "Jones", "http://Advantis.com/~Jones/webproj")
 

例 2

@DTWR_ADDENTRY("URLLIST", "SMITH", "http://www.software.ibm.com/",
     "WORK_URL,")

DTWR_CLEARREG


AIX HP-UX Linux OS/2 OS/390 OS/400 SCO SUN Win NT
X

X
X

X

目的

从 Web 注册表中清除条目。

格式

@DTWR_CLEARREG(registry)

参数

表 189. DTWR_CLEARREG 参数
数据类型 参数 用法 说明
字符串 registry IN 要清除的注册表名称。

返回码

表 190. DTWR_CLEARREG 返回码
返回码 说明
-1001 服务器不能处理 Net.Data 请求来分配内存。
1001 输入参数中包含一个空值。
1002 输入参数中包含一个由空终结字符组成的字符串值。
1003 在函数调用时传递的参数数目或者超过了允许的最大数目,或者小于该函数必需的最小数目。
1005 传递给函数调用的参数应该是一个字符串变量,但实际上是另一个类型的变量。
1007 参数中包含了一个无效值。
3005 Web 注册表内部函数无法使用指定的注册表,因为无法找到该注册表。
3006 Web 注册表内部函数无法创建指定的注册表, 因为注册表名称中的路径不存在。
3007 Web 注册表内部函数无法完成指定的操作, 因为请求者无权对指定的注册表进行操作。

例 1

@DTWR_CLEARREG("Myregistry")
 

DTWR_CLOSEREG


AIX HP-UX Linux OS/2 OS/390 OS/400 SCO SUN Win NT





X


目的

关闭一个 Web 注册表

格式

@DTWR_CLOSEREG(registry)

参数

表 191. DTWR_CLOSEREG 参数
数据类型 参数 用法 说明
字符串 registry IN 要关闭的注册表的名称。

限制:Web 注册表名称中不要使用例如星号(*)和反斜线(\)等的特殊字符。

返回码

表 192. DTWR_CLOSEREG 返回码
返回码 说明
-1001 服务器不能处理 Net.Data 请求来分配内存。
1001 输入参数中包含一个空值。
1002 输入参数中包含一个由空终结字符组成的字符串值。
1003 在函数调用时传递的参数数目或者超过了允许的最大数目,或者小于该函数必需的最小数目。
1005 传递给函数调用的参数应该是一个字符串变量,但实际上是另一个类型的变量。
1007 参数中包含了一个无效值。
3005 Web 注册表内部函数无法使用指定的注册表,因为无法找到该注册表。

例 1:关闭注册表

@DTWR_CLOSEREG("/qsys.lib/mylib.lib/myreg.file")
 

DTWR_CREATEREG


AIX HP-UX Linux OS/2 OS/390 OS/400 SCO SUN Win NT
X

X
X

X

目的

创建一个新的 Web 注册表。

格式

@DTWR_CREATEREG(registry, security)

@DTWR_CREATEREG(registry)

参数

表 193. DTWR_CREATEREG 参数
数据类型 参数 用法 说明
字符串 registry IN 要创建的注册表名称。

限制:Web 注册表名称中不要使用例如星号(*)和反斜线(\)等的特殊字符。

字符串 security IN 用以创建 registry 的安全性类型。在 UNIX 操作系 统中,缺省的安全性与注册表所在目录的安全性相同。必须为三个安全性组指定安全性:用户、 组和公共。R 表示具有读许可权,W 表示具有写许可权,而 X 表示具有执行许可权。例如, 如果要对三个组都指定全部权限,可以指定此参数为 *RWX, *RWX, *RWX。此参数是可选的。

返回码

表 194. DTWR_CREATEREG 返回码
返回码 说明
-1001 服务器不能处理 Net.Data 请求来分配内存。
1001 输入参数中包含一个空值。
1002 输入参数中包含一个由空终结字符组成的字符串值。
1003 在函数调用时传递的参数数目或者超过了允许的最大数目,或者小于该函数必需的最小数目。
1005 传递给函数调用的参数应该是一个字符串变量,但实际上是另一个类型的变量。
1007 参数中包含了一个无效值。
3002 Web 注册表内部函数无法删除指定的注册表。
3006 Web 注册表内部函数无法创建指定的注册表, 因为注册表名称中的路径不存在。
3007 Web 注册表内部函数无法完成指定的操作, 因为请求者无权对指定的注册表进行操作。
3008 Web 注册表内部函数无法出于未知的原因创建指定的注册表。

例 1

@DTWR_CREATEREG("myRegistry")
 

例 2

@DTWR_CREATEREG("URLLIST", "*RWX, *RWX, *R")

DTWR_DELENTRY


AIX HP-UX Linux OS/2 OS/390 OS/400 SCO SUN Win NT
X

X
X

X

目的

将 Web 注册表删除一个条目。

格式

@DTWR_DELENTRY(registry, registryVariable, index)

@DTWR_DELENTRY(registry, registryVariable)

参数

表 195. DTWR_DELENTRY 参数
数据类型 参数 用法 说明
字符串 registry IN 要从中移去条目的注册表名称。
字符串 registryVariable IN 要移去的条目中 registryVariable 字符串部分的值。
字符串 index IN 索引项中 registryVariable 字符串索引部分的值。这是一个可选参数。如果指定此参数,则从注册表移去索引项。

返回码

表 196. DTWF_DELENTRY 返回码
返回码 说明
-1001 服务器不能处理 Net.Data 请求来分配内存。
1001 输入参数中包含一个空值。
1002 输入参数中包含一个由空终结字符组成的字符串值。
1003 在函数调用时传递的参数数目或者超过了允许的最大数目,或者小于该函数必需的最小数目。
1005 传递给函数调用的参数应该是一个字符串变量,但实际上是另一个类型的变量。
1007 参数中包含了一个无效值。
3004 Web 注册表内部函数无法从指定的注册表除去或检索条目, 因为指定的条目不存在。
3005 Web 注册表内部函数无法使用指定的注册表,因为无法找到该注册表。
3007 Web 注册表内部函数无法完成指定的操作, 因为请求者无权对指定的注册表进行操作。

例 1

@DTWR_DELENTRY("Myregistry", "Jones")

例 2

@DTWR_DELENTRY("URLLIST", "SMITH", "WORK_URL")

DTWR_DELREG


AIX HP-UX Linux OS/2 OS/390 OS/400 SCO SUN Win NT
X

X
X

X

目的

删除一个 Web 注册表。

格式

@DTWR_DELREG(registry)

参数

表 197. DTWR_DELREG 参数
数据类型 参数 用法 说明
字符串 registry IN 要删除的注册表名称。

返回码

表 198. DTWR_DELREG 返回码
返回码 说明
-1001 服务器不能处理 Net.Data 请求来分配内存。
1001 输入参数中包含一个空值。
1002 输入参数中包含一个由空终结字符组成的字符串值。
1003 在函数调用时传递的参数数目或者超过了允许的最大数目,或者小于该函数必需的最小数目。
1005 传递给函数调用的参数应该是一个字符串变量,但实际上是另一个类型的变量。
1007 参数中包含了一个无效值。
3005 Web 注册表内部函数无法使用指定的注册表,因为无法找到该注册表。
3007 Web 注册表内部函数无法完成指定的操作, 因为请求者无权对指定的注册表进行操作。

例 1

@DTWR_DELREG("Myregistry")

DTWR_LISTREG


AIX HP-UX Linux OS/2 OS/390 OS/400 SCO SUN Win NT
X

X
X

X

目的

列出 Web 注册表的内容。

格式

@DTWR_LISTREG(registry, registryTable)

参数

表 199. DTWR_LISTREG 参数
数据类型 参数 用法 说明
字符串 registry IN 要列出的注册表名称。
表格 registryTable OUT 用于存放注册表条目的表格变量的名称。

返回码

表 200. DTWR_LISTREG 返回码
返回码 说明
-1001 服务器不能处理 Net.Data 请求来分配内存。
1001 输入参数中包含一个空值。
1002 输入参数中包含一个由空终结字符组成的字符串值。
1003 在函数调用时传递的参数数目或者超过了允许的最大数目,或者小于该函数必需的最小数目。
1004 传递给函数调用的参数应该是一个 Net.Data 宏表格变量, 但实际上是另一个类型的变量。
1005 传递给函数调用的参数应该是一个字符串变量,但实际上是另一个类型的变量。
1006 传递给函数调用的参数必须是一个输出参数,但实际上传递了一个文字串。
1007 参数中包含了一个无效值。
3005 Web 注册表内部函数无法使用指定的注册表,因为无法找到该注册表。
3007 Web 注册表内部函数无法完成指定的操作, 因为请求者无权对指定的注册表进行操作。

用法注意事项

DTWR_LISTREG 返回由用户传递的 OUT 表格变量中的注册表条目信息。此表格变量是在 作为参数传递到 FUNCTION 模块执行 LISTREG 注册表操作以前,在用户宏中定义的。

如果 对于表格中的最大行数,用户使用 ALL 选项来定义表格变量,则此操作列出了表格 中所有可用的注册表条目,每个表格行一个。另一方面,如果用户指定表格中的最大行数 为值 X, 但在指定的注册表中有多于 X 个条目,则只列出前面的 X 个条目,并发回 一个错误代码,表示由于没有足够的表格行用于列出更多的条目,现在只能列出一个部分 列表。如果值 X 超过了指定的注册表中的可用条目数,则列出所有条目。

在表格中总是有两列。表格的列标题设置为 REGISTRY_VARIABLE 和 REGISTRY_DATA。

例 1

%DEFINE RegistryTable = %TABLE(ALL)
 
@DTWR_LISTREG("URLLIST", RegistryTable)

DTWR_LISTSUB


AIX HP-UX Linux OS/2 OS/390 OS/400 SCO SUN Win NT








X

目的

列出 Web 注册表中的直接子关键字条目。

格式

@DTWR_LISTSUB(registry, registryTable)

参数

表 201. DTWR_LISTSUB 参数
数据类型 参数 用法 说明
字符串 registry IN 要列出的注册表名称。
表格 registryTable OUT 用于存放注册表条目的表格变量的名称。

返回码

表 202. DTWR_LISTSUB 返回码
返回码 说明
-1001 服务器不能处理 Net.Data 请求来分配内存。
1001 输入参数中包含一个空值。
1002 输入参数中包含一个由空终结字符组成的字符串值。
1003 在函数调用时传递的参数数目或者超过了允许的最大数目,或者小于该函数必需的最小数目。
1005 传递给函数调用的参数应该是一个字符串变量,但实际上是另一个类型的变量。
1006 传递给函数调用的参数必须是一个输出参数,但实际上传递了一个文字串。
1007 参数中包含了一个无效值。
3005 Web 注册表内部函数无法使用指定的注册表,因为无法找到该注册表。
3007 Web 注册表内部函数无法完成指定的操作, 因为请求者无权对指定的注册表进行操作。

用法注意事项

  1. DTWR_LISTSUB 返回由用户传递的 OUT 表格参数中的注 册表条目信息。此表格变量是在 作为参数传递到 LISTSUBG 注册表操作以前,在用户宏中定义的。

    如果 对于表格中的最大行数,用户使用 ALL 选项来定义表格变量,则此操作列出了表格 中所有可用的注册表条目,每个表格行一个条目。另一方面,如果用户指定表格中的最大行数 为值 X, 但在指定的注册表中有多于 X 个条目,则只列出前面的 X 个条目,并发回 一个错误代码,表示由于没有足够的表格行用于列出更多的条目,现在只能列出一个部分 列表。如果值 X 超过了指定的注册表中的可用条目数,则列出所有条目。在表格中 总是只有一列。

    表格的列标题设置为 "REGISTRY_SUBKEY"。

  2. 只有在与 Windows95 “系统注册表”兼容的操作系统中,此函数才有效。

例 1

%DEFINE RegistryTable = %TABLE(ALL)
 
@DTWR_LISTSUB("URLLIST", RegistryTable)

DTWR_OPENREG


AIX HP-UX Linux OS/2 OS/390 OS/400 SCO SUN Win NT





X


目的

打开一个 Web 注册表。

格式

@DTWR_OPENREG(registry, commit)

@DTWR_OPENREG(registry)

参数

表 203. DTWR_OPENREG 参数
数据类型 参数 用法 说明
字符串 registry IN 要打开的注册表的名称。
字符串 commit IN 一个单独的符号或文字串,指定注册表在确认控制下是否打开。可能的值有:

Y
在确认控制下打开注册表。

N
不在确认控制下打开注册表。

返回码

表 204. DTWR_OPENREG 返回码
返回码 说明
-1001 服务器不能处理 Net.Data 请求来分配内存。
1001 输入参数中包含一个空值。
1002 输入参数中包含一个由空终结字符组成的字符串值。
1003 在函数调用时传递的参数数目或者超过了允许的最大数目,或者小于该函数必需的最小数目。
1005 传递给函数调用的参数应该是一个字符串变量,但实际上是另一个类型的变量。
1007 参数中包含了一个无效值。
3005 Web 注册表内部函数无法使用指定的注册表,因为无法找到该注册表。
3007 Web 注册表内部函数无法完成指定的操作, 因为请求者无权对指定的注册表进行操作。

例 1:在确认控制下打开注册表

@DTWR_OPENREG("/qsys.lib/mylib.lib/myreg.file", "Y")
 

DTWR_RTVENTRY


AIX HP-UX Linux OS/2 OS/390 OS/400 SCO SUN Win NT
X

X
X

X

目的

从 Web 注册表检索注册表字符串值。

格式

@DTWR_RTVENTRY(registry, registryVariable, registryData, index)

@DTWR_RTVENTRY(registry, registryVariable, registryData)

@DTWR_rRTVENTRY(registry, registryVariable, index)

@DTWR_rRTVENTRY(registry, registryVariable)

参数

表 205. DTWR_RTVENTRY 参数
数据类型 参数 用法 说明
字符串 registry IN 要在其中检索条目的注册表名称。
字符串 registryVariable IN 针对检索其 registerData 字符串的注册表项,它的 registryVariable 字符串部分的值。
字符串 registryData OUT 返回注册表项 registryData 字符串部分的值,此注册表项和 registryVariable匹配。
字符串 index IN 一个索引项中 registryVariable 字符串的索引部 分的值,此索引项的 registryData 字符串被返回。这是一个可选参数。如果指定此参数, 则返回索引项的 registryData 字符串。

返回码

表 206. DTWR_RTVENTRY 返回码
返回码 说明
-1001 服务器不能处理 Net.Data 请求来分配内存。
1001 输入参数中包含一个空值。
1002 输入参数中包含一个由空终结字符组成的字符串值。
1003 在函数调用时传递的参数数目或者超过了允许的最大数目,或者小于该函数必需的最小数目。
1005 传递给函数调用的参数应该是一个字符串变量,但实际上是另一个类型的变量。
1006 传递给函数调用的参数必须是一个输出参数,但实际上传递了一个文字串。
1007 参数中包含了一个无效值。
3004 Web 注册表内部函数无法从指定的注册表除去或检索条目, 因为指定的条目不存在。
3005 Web 注册表内部函数无法使用指定的注册表,因为无法找到该注册表。
3007 Web 注册表内部函数无法完成指定的操作, 因为请求者无权对指定的注册表进行操作。

例 1

%DEFINE RegistryData = ""
@DTWR_RTVENTRY("Myregistry", "Jones", RegistryData)

例 2

@DTWR_RTVENTRY("URLLIST", "SMITH", RegistryData, "WORK_URL")
 

例 3

@DTWR_rRTVENTRY("Myregistry", "Jones")
 

例 4

@DTWR_rRTVENTRY("URLLIST", "SMITH", "WORK_URL")

DTWR_UPDATEENTRY


AIX HP-UX Linux OS/2 OS/390 OS/400 SCO SUN Win NT
X

X
X

X

目的

更新 Web 注册表中的一个注册表字符串值。

格式

@DTWR_UPDATEENTRY(registry, registryVariable, newData, index)

@DTWR_UPDATEENTRY(registry, registryVariable, newData)

参数

表 207. DTWR_UPDATEENTRY 参数
数据类型 参数 用法 说明
字符串 registry IN 要更新其条目的注册表的名称。
字符串 registryVariable IN 要更新的注册表条目 registryVariable 字符串部分 的值。
字符串 newData IN 给要更新的注册表条目 registryData 字符串部分 的新值。
字符串 index IN 在要更新的索引项中 registryVariable 字符串索引 部分的值。这是一个可选参数。如果指定此参数,则更新索引条目。

返回码

表 208. DTWR_UPDATEENTRY 返回码
返回码 说明
-1001 服务器不能处理 Net.Data 请求来分配内存。
1001 输入参数中包含一个空值。
1002 输入参数中包含一个由空终结字符组成的字符串值。
1003 在函数调用时传递的参数数目或者超过了允许的最大数目,或者小于该函数必需的最小数目。
1005 传递给函数调用的参数应该是一个字符串变量,但实际上是另一个类型的变量。
1007 参数中包含了一个无效值。
3003 Web 注册表内部函数无法向指定的注册表中添加条目, 因为指定的条目已经存在。
3004 Web 注册表内部函数无法从指定的注册表除去或检索条目, 因为指定的条目不存在。
3005 Web 注册表内部函数无法使用指定的注册表,因为无法找到该注册表。
3007 Web 注册表内部函数无法完成指定的操作, 因为请求者无权对指定的注册表进行操作。

用法注意事项

与此值相应的注册表入口名称不能更改。

例 1

@DTWR_UPDATEENTRY("Myregistry", "Jones", "http://advantis.com/~Jones/personal")

例 2

@DTWR_UPDATEENTRY("URLLIST", "SMITH", "http://www.software.ibm.com/personal", "WORK_URL")


[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]