⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 newsz.cpp

📁 完成注册表修改的应用程序,能修改多种键值,实现注册表编辑器的禁止和解除禁止.
💻 CPP
字号:
// newsz.cpp : implementation file
//

#include "stdafx.h"
#include "REG.h"
#include "newsz.h"
#include "gneng.h"
#include <assert.h>


#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// newsz dialog


LPBYTE CString_To_LPBYTEE(CString str) 
{ 
   LPBYTE lpb=new BYTE[str.GetLength()+1];  
 
    for(int i=0; i< str.GetLength();i++)
		 lpb[i] = str[i];

    lpb[str.GetLength()]=0; 
return lpb;
} 


newsz::newsz(CWnd* pParent /*=NULL*/)
	: CDialog(newsz::IDD, pParent)
{
	//{{AFX_DATA_INIT(newsz)
	m_getszname = _T("");
	m_getszvalue = _T("");
	m_xianshi = _T("");
	m_xian = _T("");
	//}}AFX_DATA_INIT
}


void newsz::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(newsz)
	DDX_Text(pDX, IDC_EDIT1, m_getszname);
	DDX_Text(pDX, IDC_EDIT2, m_getszvalue);
	DDX_Text(pDX, IDC_EDIT3, m_xianshi);
	DDX_Text(pDX, IDC_EDIT4, m_xian);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(newsz, CDialog)
	//{{AFX_MSG_MAP(newsz)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// newsz message handlers

void newsz::OnOK() 
{   UpdateData();
   if(m_getszname == _T(""))
	{
		MessageBox("请输入要创建的RZ名称","错误",MB_OK);
	}
	else{


     DWORD type_1=REG_SZ;
     DWORD   rc; 
     DWORD   len; 
	
    
	 HKEY hkey;
   char    buf[1024]; 
	
    UpdateData();
    len = sizeof(buf); 
    RegOpenKeyEx(HKEY_CURRENT_USER,"Environment", 0, KEY_QUERY_VALUE | KEY_SET_VALUE, &hkey);
   rc = RegQueryValueEx( hkey,m_getszname, 0, &type_1, (LPBYTE)buf, &len ); 
    if (rc != ERROR_SUCCESS) { 
        if (rc == ERROR_FILE_NOT_FOUND) { 
            buf[0] = 0; 
             
        } 
        else { 
           assert( rc == ERROR_SUCCESS ); 
        } 
    } 
   UpdateData();
    
    LPBYTE owner_Set=CString_To_LPBYTEE(m_getszvalue);  
    
    DWORD cbData_2=m_getszvalue.GetLength()+1;
	RegOpenKeyEx(HKEY_CURRENT_USER,"Environment", 0, KEY_QUERY_VALUE | KEY_SET_VALUE, &hkey);
    rc = RegSetValueEx( hkey, m_getszname, 0, REG_SZ, owner_Set, cbData_2 ); 
    //assert( rc == ERROR_SUCCESS );
	m_xian=" 恭喜你创建键";
	m_xianshi=m_getszname;
	UpdateData(false);
	}
}
   


	
	
   

void newsz::OnCancel() 
{
	gneng dia;
	
	CDialog::OnCancel();
		dia.DoModal();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -