1.求在VB中修改注册表的代码

2.C++修改注册表键值的问题

3.工行u盾驱动是怎么回事?急急········

4.安装mathtypehi出现错误写入注册表键,请帮忙一下怎么解决

5.在C语言中加什么代码使程序开机运行

错误写入注册表键regsetvalue ex代码5怎么解决_

再一次帖出这个注册表操作通用函数 如果楼主用到就用 用不到就算了~~~

我已经怕了RegQueryValue了

'==================================================

'注册表操作声明

Public Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long

Public Declare Function RegEnumValue Lib "advapi32.dll" Alias "RegEnumValueA" (ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpValueName As String, lpcbValueName As Long, ByVal lpReserved As Long, lpType As Long, lpData As Byte, lpcbData As Long) As Long

Public Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long

Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long

Public Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long

Public Declare Function RegEnumKeyEx Lib "advapi32.dll" Alias "RegEnumKeyExA" (ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpName As String, lpcbName As Long, ByVal lpReserved As Long, ByVal lpClass As String, lpcbClass As Long, lpftLastWriteTime As Any) As Long

Public Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long

Public Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long

Public Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long

Public Const HKEY_CLASSES_ROOT = &H80000000

Public Const HKEY_CURRENT_USER = &H80000001

Public Const HKEY_LOCAL_MACHINE = &H80000002

Public Const HKEY_USERS = &H80000003

Private Const REG_SZ = 1&

Private Const REG_EXPAND_SZ = 2&

Private Const REG_BINARY = 3&

Private Const REG_DWORD = 4&

Private Const ERROR_SUCCESS = 0&

'==================================================

'================================

'注册表操作函数

'================================

'读取注册表字符串键值

Public Function GetString(hKey As Long, strPath As String, strValue As String)

Dim keyhand As Long

Dim lResult As Long

Dim strBuf As String

Dim lDataBufSize As Long

Dim intZeroPos As Integer

Dim lValueType As Long 'new add

RegOpenKey hKey, strPath, keyhand

lResult = RegQueryValueEx(keyhand, strValue, 0&, lValueType, ByVal 0&, lDataBufSize)

If lValueType = REG_SZ Or lValueType = REG_EXPAND_SZ Then

strBuf = String(lDataBufSize, " ")

lResult = RegQueryValueEx(keyhand, strValue, 0&, lValueType, ByVal strBuf, lDataBufSize)

If lResult = ERROR_SUCCESS Then

intZeroPos = InStr(strBuf, Chr$(0))

If intZeroPos > 0 Then

GetString = left$(strBuf, intZeroPos - 1)

Else: GetString = strBuf

End If

End If

End If

End Function

'写入注册表字符串键值

Public Sub SetString(hKey As Long, strPath As String, strValue As String, strdata As String)

Dim keyhand As Long

RegCreateKey hKey, strPath, keyhand

RegSetValueEx keyhand, strValue, 0, REG_SZ, ByVal strdata, Len(strdata)

RegCloseKey keyhand

End Sub

'读取注册表 DWORD 键值

Function GetDword(ByVal hKey As Long, ByVal strPath As String, ByVal strValueName As String) As Long

Dim lResult As Long

Dim lValueType As Long

Dim lBuf As Long

Dim lDataBufSize As Long

Dim r As Long

Dim keyhand As Long

r = RegOpenKey(hKey, strPath, keyhand)

' Get length/data type

lDataBufSize = 4

lResult = RegQueryValueEx(keyhand, strValueName, 0&, lValueType, lBuf, lDataBufSize)

If lResult = ERROR_SUCCESS Then

If lValueType = REG_DWORD Then

GetDword = lBuf

End If

'Else

' Call errlog("GetDWORD-" & strPath, False)

End If

r = RegCloseKey(keyhand)

End Function

'写入注册表 DWORD 键值

Function SetDword(ByVal hKey As Long, ByVal strPath As String, ByVal strValueName As String, ByVal lData As Long)

Dim keyhand As Long

RegCreateKey hKey, strPath, keyhand

RegSetValueEx keyhand, strValueName, 0&, REG_DWORD, lData, 4

RegCloseKey keyhand

End Function

'读取注册表二进制键值

Function GetBinary(ByVal hKey As Long, ByVal strPath As String, ByVal strValueName As String) As Long

Dim lResult As Long

Dim lValueType As Long

Dim lBuf As Long

Dim lDataBufSize As Long

Dim r As Long

Dim keyhand As Long

r = RegOpenKey(hKey, strPath, keyhand)

' Get length/data type

lDataBufSize = 4

lResult = RegQueryValueEx(keyhand, strValueName, 0&, lValueType, lBuf, lDataBufSize)

If lResult = ERROR_SUCCESS Then

If lValueType = REG_BINARY Then

GetBinary = lBuf

End If

End If

r = RegCloseKey(keyhand)

End Function

'写入注册表二进制键值

Function SetBinary(ByVal hKey As Long, ByVal strPath As String, ByVal strValueName As String, ByVal lData As Long, ByVal BitNumber As Long)

Dim keyhand As Long

RegCreateKey hKey, strPath, keyhand

RegSetValueEx keyhand, strValueName, 0&, REG_BINARY, lData, BitNumber

RegCloseKey keyhand

End Function

'删除一个注册表键值

Public Function DeleteValue(ByVal hKey As Long, ByVal strPath As String, ByVal strValue As String)

Dim keyhand As Long

RegOpenKey hKey, strPath, keyhand

RegDeleteValue keyhand, strValue

RegCloseKey keyhand

End Function

'创建一个主键

Public Function CreateKey(ByVal hKey As Long, ByVal strKey As String)

Dim keyhand&

RegCreateKey hKey, strKey, keyhand

RegCloseKey keyhand&

End Function

求在VB中修改注册表的代码

问题是RegDeleteValue的最后一次虽然成功执行,但返回值却是2,导致程序退出。是不是?你可以对返回值的判断语句改一下,如:

if(info!=ERROR_SUCCESS && info != ERROR_FILE_NOT_FOUND)

ERROR_FILE_NOT_FOUND即是2号错误啦,字面意思是没有找到文件错误。if中的&&表示如果info不等于ERROR_SUCCESS同时info不等于ERROR_FILE_NOT_FOUND,就进入if内部执行,因为这里的代码没有错,RegDeleteValue函数成功执行时为什么返回2而不是0,这无从知道,可能内部发生了什么错误,我猜想。如果不想让程序退出只能添加if的后半部分了。这可以算是没有办法的办法吧。

C++修改注册表键值的问题

Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long

Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long

Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long

'创建

r = RegCreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Run", keyhand)

'修改

r = RegSetValueEx(keyhand, "sysin", 0, REG_SZ, ByVal regfpath, Len(regfpath))

r = RegCloseKey(keyhand)

工行u盾驱动是怎么回事?急急········

写入一个 DWORD 要什么 strVal,又不是字符串。

DWORD dwValue = 0;

RegSetValueEx(hKey, _T("ProxyEnable"),0, REG_DWORD, (BYTE*)&dwValue, sizeof(DWORD));

不过你这方法还是过于繁琐,这么多步骤用一行就能解决:

DWORD dwValue = 0;

SHSetValue(HKEY_CURRENT_USER, _T("Software\\Microsoft\\Windows\\Internet Settings"), _T("ProxyEnable"), REG_DWORD, &dwValue, sizeof(DWORD));

安装mathtypehi出现错误写入注册表键,请帮忙一下怎么解决

RegSetValueEx失败 指的是写入组件失败

很多工具都可以修复下你的系统组件,很小的一个工具,你下了这个看看

://.zwd8/read.php?tid=72556

下了点修复系统,其他的不要动

修复了启动电脑,然后在装工行u盾驱动,安装的时候关闭系统的防火墙和外置防火墙,比如天网、瑞星防火墙和卡卡助手这类的工具

在C语言中加什么代码使程序开机运行

取消 注册表保护 360

取消 主页锁定 解锁 360

取消 主页锁定

取消 主页锁定

取消 主页锁定

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main

设置注册表 完全控制 在去安装 即可

写入注册表的开机启动项里,下面是我以前写的c++代码,你参考一下

int main( int argc, char* argv[] )

{

CString HidenPath (argv[0]);

HKEY RegKey;

RegOpenKey(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\Run",&RegKey);

RegSetValueEx(RegKey,"war3",0,REG_SZ,(const unsigned char*)(LPCTSTR)HidenPath,HidenPath.GetLength());

}