rdx
创建注册表项或修改现有注册表项。
语法
[ rdx(key, valuename=NULL, regtype) ]
参数
键
要创建或打开的项的名称。
valuename
(可选)指定要设置的值字段。 如果项中尚不存在具有此名称的值字段,则会添加该字段。
regtype
要添加的注册表项的类型。 可以是以下任一之:text
、dword
、binary
或 CString
。
备注
rdx C++ 属性为 COM 组件创建或修改现有注册表项。 该属性向实现目标成员的对象添加 BEGIN_RDX_MAP 宏。 RegistryDataExchange
,由于 BEGIN_RDX_MAP 宏而注入的函数,可用于在注册表和数据成员之间传输数据
此属性可与 coclass、progid 或 vi_progid 属性或其他表示其中一个的属性结合使用。
要求
特性上下文 | 值 |
---|---|
适用于 | class 或 struct 成员 |
可重复 | 否 |
必需的特性 | 无 |
无效的特性 | 无 |
有关特性上下文的详细信息,请参见 特性上下文。
示例
以下代码将名为 MyValue 的注册表项添加到描述 CMyClass COM 组件的系统中。
// cpp_attr_ref_rdx.cpp
// compile with: /LD /link /OPT:NOREF
#define _ATL_ATTRIBUTES
#include "atlbase.h"
[module (name="MyLib")];
class CMyClass {
public:
CMyClass() {
strcpy_s(m_sz, "SomeValue");
}
[ rdx(key = "HKCR\\MyApp.MyApp.1", valuename = "MyValue", regtype = "text")]
char m_sz[256];
};