用installshield和C写的程序通过注册表进行通信

2024-05-31 18:18

本文主要是介绍用installshield和C写的程序通过注册表进行通信,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

用installshield对注册表进行操作:


nRootKey = HKEY_LOCAL_MACHINE; 
RegDBSetDefaultRoot(nRootKey);//为设置默认5大注册表项的哪一个
RegDBKeyExist (regDbKey);//这个方法返回值为0表示regDbKey在注册表中存在,返回值<0表示不存在。
//如果不存在的话,我要创建这个项并在其中写入一下名字为Sanc的字段,并赋以初值,那么我调用这句话就行了:
RegDBSetKeyValueEx("SofeWare\\Clients", "Sanc", REGDB_STRING, "10", -1);//Clients键设置一个新值Sanc,如果不存在就不会设置值。
上图为Get得到键值。




C++对注册表进行操作:


HKEY hKey;HKEY hSubKey;DWORD dwValue = 1;char Buffer[] = "raw2rgb.dll";// 使用RegCreateKey能保证如果Software\daheng_directx不存在的话,创建一个。if (RegCreateKey(HKEY_LOCAL_MACHINE, "Software\\daheng_directx", &hKey) == ERROR_SUCCESS) {//// 在这里就可以使用hKey来操作daheng_directx这个KEY里面的值了。//if (RegSetValueEx(hKey, "AEC", 0, REG_DWORD, (CONST BYTE*)&dwValue, sizeof(DWORD)) == ERROR_SUCCESS) {printf("RegSetValueEx: AEC = %d\n", dwValue);}//// 如果想在Software\\daheng_directx创建一个plugins key,那么就不能再使用hKey了,需要// 重新获取这个结点的HKEY。//if (RegCreateKey(hKey, "plugins", &hSubKey) == ERROR_SUCCESS) {if (RegSetValueEx(hSubKey, "颜色校正插件", 0, REG_SZ, (CONST BYTE*)Buffer,strlen(Buffer) + 1) == ERROR_SUCCESS) {printf("RegSetValueEx: 颜色校正插件 = %s\n", Buffer);}RegCloseKey(hSubKey);}}RegCloseKey(hKey);



//==================================================================================================
int Write_reg_error()
{
char system[]="11";
int i=0;
HKEY hKey;
//RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SOFTWARE\\Clients\\WritePara",0,KEY_SET_VALUE,&hKey );//打开注册表,不存在时报错
if(RegCreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\\Clients\\WritePara", &hKey) != ERROR_SUCCESS)//打开注册表,不存在时创建。
{
printf("Error 1\n");
return -1;
}
if(RegSetValueEx(hKey, "AutoAdminLogon",0,REG_SZ,(const unsigned char*)system,sizeof(system)) != ERROR_SUCCESS)//对对应的键值写入数据
{
printf("Error 2\n");
return -1;
}
RegCloseKey(hKey);
scanf("%d", &i);
return 0;
}









这篇关于用installshield和C写的程序通过注册表进行通信的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1018686

相关文章

Golang如何对cron进行二次封装实现指定时间执行定时任务

《Golang如何对cron进行二次封装实现指定时间执行定时任务》:本文主要介绍Golang如何对cron进行二次封装实现指定时间执行定时任务问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录背景cron库下载代码示例【1】结构体定义【2】定时任务开启【3】使用示例【4】控制台输出总结背景

使用Python进行GRPC和Dubbo协议的高级测试

《使用Python进行GRPC和Dubbo协议的高级测试》GRPC(GoogleRemoteProcedureCall)是一种高性能、开源的远程过程调用(RPC)框架,Dubbo是一种高性能的分布式服... 目录01 GRPC测试安装gRPC编写.proto文件实现服务02 Dubbo测试1. 安装Dubb

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Linux使用scp进行远程目录文件复制的详细步骤和示例

《Linux使用scp进行远程目录文件复制的详细步骤和示例》在Linux系统中,scp(安全复制协议)是一个使用SSH(安全外壳协议)进行文件和目录安全传输的命令,它允许在远程主机之间复制文件和目录,... 目录1. 什么是scp?2. 语法3. 示例示例 1: 复制本地目录到远程主机示例 2: 复制远程主

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图

Python程序打包exe,单文件和多文件方式

《Python程序打包exe,单文件和多文件方式》:本文主要介绍Python程序打包exe,单文件和多文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python 脚本打成exe文件安装Pyinstaller准备一个ico图标打包方式一(适用于文件较少的程

RabbitMQ工作模式中的RPC通信模式详解

《RabbitMQ工作模式中的RPC通信模式详解》在RabbitMQ中,RPC模式通过消息队列实现远程调用功能,这篇文章给大家介绍RabbitMQ工作模式之RPC通信模式,感兴趣的朋友一起看看吧... 目录RPC通信模式概述工作流程代码案例引入依赖常量类编写客户端代码编写服务端代码RPC通信模式概述在R

windows系统上如何进行maven安装和配置方式

《windows系统上如何进行maven安装和配置方式》:本文主要介绍windows系统上如何进行maven安装和配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录1. Maven 简介2. maven的下载与安装2.1 下载 Maven2.2 Maven安装2.

C/C++的OpenCV 进行图像梯度提取的几种实现

《C/C++的OpenCV进行图像梯度提取的几种实现》本文主要介绍了C/C++的OpenCV进行图像梯度提取的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录预www.chinasem.cn备知识1. 图像加载与预处理2. Sobel 算子计算 X 和 Y

在Spring Boot中实现HTTPS加密通信及常见问题排查

《在SpringBoot中实现HTTPS加密通信及常见问题排查》HTTPS是HTTP的安全版本,通过SSL/TLS协议为通讯提供加密、身份验证和数据完整性保护,下面通过本文给大家介绍在SpringB... 目录一、HTTPS核心原理1.加密流程概述2.加密技术组合二、证书体系详解1、证书类型对比2. 证书获