利用InstallShield获取注册表键值的脚本

Use 
nvType = REGDB_NUMBER; 
szKey = "\\SYSTEM\\CurrentControlSet\\Servic 
es\\{58ECC408-265E-4342-9DA4-70BF1796D81D}\\Parameters\\Tcpip"; 
szName = "EnableDHCP" 
RegDBSetDefaultRoot ( HKEY_LOCAL_MACHINE ); 
RegDBGetKeyvalueEx ( szKey, szName, nvType, svvalue, nvSize ); 
if ( svvalue = "1") then 
szName = "DhcpIPAddress"; 
else 
szName = "IPAddress"; 
endif; 
nvType = REGDB_STRING; 
RegDBSetDefaultRoot ( HKEY_LOCAL_MACHINE ); 
RegDBGetKeyvalueEx ( szKey, szName, nvType, svvalue, nvSize ); <p>上面的程序实际上是如何获取注册表中的键值,如果用于获取IP的话,上面的{58ECC408-265E-4342-9DA4-70BF1796D81D}是我的机器上的,您的GUID可能和我的不一样,但你还可以从以下的注册表获取: 
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Adapters 
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces 
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\El90x1\Parameters\Tcpip(如果存在的话)

同样,如果您想获取您的主机名的话,可以通过以下程序: 
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE); 
RegDBGetKeyvalueEx("SYSTEM\\CurrentControlSet\\Control\\ComputerName\\ComputerName","ComputerName", nvType, szServerPort, nvSize);

大家可以通过以上的示例获取注册表的其他键值。

(0)

相关推荐

  • 利用InstallShield获取注册表键值的脚本

    Use  nvType = REGDB_NUMBER;  szKey = "\\SYSTEM\\CurrentControlSet\\Servic  es\\{58ECC408-265E-4342-9DA4-70BF1796D81D}\\Parameters\\Tcpip";  szName = "EnableDHCP"  RegDBSetDefaultRoot ( HKEY_LOCAL_MACHINE );  RegDBGetKeyvalueEx ( szKey,

  • 基于重启后消失的注册表键值的详细介绍

    今天遇到一个bug,折腾了半天才解决掉,分享给大家.Bug描述一位开发人员调用下面的代码来创建一个注册表键值: 复制代码 代码如下: HKEY hKey;if(::RegOpenKeyEx(HKEY_CURRENT_USER, DemoRegKey, 0, KEY_WRITE, &hKey) != ERROR_SUCCESS){    RegCreateKeyEx(HKEY_CURRENT_USER, DemoRegKey, 0, NULL, REG_OPTION_VOLATILE       

  • 完整的注册表操作实例 VBS脚本

    ①创建主键.创建各类型的键值. ②读取键值并分析键值类型. ③枚举主键及键值. ④判断键或键值是否存在. ⑤查询注册表键的操作权限. ⑥监视注册表根键.主键.键值,当发现变动时提示. 复制代码 代码如下: '''注册表查询/操作 On Error Resume Next Const HKEY_CLASSES_ROOT = &H80000000'''设置注册表5大根键,HKCR-----------① Const HKEY_CURRENT_USER = &H80000001'''HKCU C

  • C#获取注册表指定键值操作

    某些程序必须依赖指定运行环境.那么读取注册表来判断此电脑是否有执行环境是个很不错的办法.因为每个软件安装之后都会在注册表中注册对应的键值,并且有些键值是独一无二的. 那么首先就需要找到那个具体的独一无二的键值,以便程序在运行之前能够去读取以判断. 代码如下: class Program { private static string _sValue = string.Empty; static void Main(string[] args) { Console.WriteLine("请输入待查

  • 如何利用python操作注册表

    注册表是windows管理配置系统运行参数的一个核心数据库.在这个数据库里整合集成了全部系统和应用程序的初始化信息:其中包含了硬件设备的说明.相互关联的应用程序与文档文件.窗口显示方式.网络连接参数.甚至有关系到计算机安全的网络共享设置 . 1.读取 读取用的方法是OpenKey方法:打开特定的key winreg.OpenKey(key,sub_key,res=0,sam=KEY_READ) 例子:此例子是显示了本机网络配置的一些注册表项 import winreg key = winreg.

  • php获取数组中键值最大数组项的索引值 原创

    本文实例讲述了php获取数组中键值最大数组项的索引值的方法.分享给大家供大家参考.具体分析如下: 一.问题: 从给定数组中获取值最大的数组项的键值.用途如:获取班级得分最高的学生的姓名. 二.解决方法: <?php /* * Created on 2015-3-17 * Created by www.jb51.net */ $arr=array('tom'=>9,'jack'=>3,'kim'=>5,'hack'=>4); asort($arr); //print_r($ar

  • javascript判断并获取注册表中可信任站点的方法

    本文实例讲述了javascript判断并获取注册表中可信任站点的方法.分享给大家供大家参考.具体分析如下: 判断可信任站点,首先要在注册表中找到可信任站点在注册表中的位置,如下: (1)域名作为可信任站点在注册表中的位置: HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\InternetSettings\\ZoneMap\\Domains\\ (2)IP作为可信任站点在注册表中的位置: HKCU\\Software\\Microsoft\\

  • 用批处理删除注册表健值的方法分享

    一个基本的格式参考 reg delete KeyName [/v ValueName | /ve | /va] [/f] KeyName [\\Machine\]FullKey Machine 远程机器名 - 忽略当前机器的默认值. 远程机器上只有 HKLM 和 HKU. FullKey ROOTKEY\SubKey ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ] SubKey 所选 ROOTKEY 下的注册表项的全名. ValueName 所选项下的要删

  • PowerShell小技巧之查找获取注册表路径

    在先前的技巧中我们说明如何将一个PS内置的路径格式转化成一个实际路径.这里介绍了一个例子.这段代码递归从HKEY_CURRENT_USER获取所有包含"powershell"词缀的键(简单的替换查询词缀将能获得你想要查询的任何东西) 复制代码 代码如下: Get-ChildItem -Path HKCU:\ -Include *PowerShell* -Recurse -ErrorAction SilentlyContinue|Select-Object -Property *Path

  • python读取注册表中值的方法

    在Python的标准库中,_winreg.pyd可以操作Windows的注册表,另外第三方的win32库封装了大量的Windows API,使用起来也很方便.不过这里介绍的是使用_winreg操作注册表,毕竟是Python自带的标准库,无需安装第三方库. 下面的例子是通过Python获取Windows XP下已经安装的补丁号.Windows的补丁号都在"HKEY_LOCAL_MACHINE\SOFTWARE\\Microsoft\\Updates"下,通过循环下面所有的目录节点,如果找

随机推荐