登录
首页 » VC++源码 » 3个VC++ win注册表编程操作实例

3个VC++ win注册表编程操作实例

于 2022-02-22 发布 文件大小:67.54 kB
0 126
下载积分: 2 下载次数: 1

代码说明:

本源码中有三个VC++操作表的相关例子,每一个都属于比较简单那种,展示注册表的操作技巧,有兴趣的下载源码包。   HKEY hKEY; //定义有关的 hKEY, 在查询结束时要关闭。   LPCTSTR data_Set="SoftwareMicrosoftWindowsCurrentVersion"; //子键目标   //打开与路径 data_Set 相关的 hKEY,第一个参数为根键名称,第二个参数表。   //表示要访问的键的位置,第三个参数必须为0,KEY_READ表示以查询的方式。   //访问注册表,hKEY则保存此函数所打开的键的句柄。   long retopen=(::RegOpenKeyEx(HKEY_LOCAL_MACHINE,data_Set, 0, KEY_READ, &hKEY));   if(retopen!=ERROR_SUCCESS) //如果无法打开hKEY,则终止程序的执行   {    MessageBox("错误: 无法打开有关的hKEY!");    return;   }   //查询有关的数据 (系统用户姓名 owner_Get)。   LPBYTE owner_Get=new BYTE[80];   DWORD type_1=REG_SZ ;   DWORD cbData_1=80;   //hKEY为刚才RegOpenKeyEx()函数所打开的键的句柄,"RegisteredOwner"。   //表示要查 询的键值名,type_1表示查询数据的类型,owner_Get保存所。   //查询的数据,cbData_1表示预设置的数据长度。   //与RegQureyValueEx()类似,hKEY表示已打开的键的句柄,"RegisteredOwner"   //表示要访问的键值名,owner_Set表示新的键值,type_1和cbData_1表示新值。   //的数据类型和数据长度   UpdateData(true);//获得编辑框数据   if(m_Adduser.IsEmpty()||m_Addpassword.IsEmpty())//用户名、密码不能为空   {    AfxMessageBox("输入用户名、密码不能为空!");    return;   }

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • VC++ 创建可以显示“最近打开”文件的功能
    VC++ 创建可以显示“最近打开”文件的功能,也就是为菜单项增添历史记录的功能,让打开的文件记录显示在菜单列表中,方便用户下一次打开文件,挺人性化的一个功能。现在的word、WPS等软件,打开后,用户都可以从菜单中选择最近打开的文件,快速找到自己的文档,本VC++源码就是模拟了这一功能。运行效果请参见下边的测试截图。
    2023-05-17 09:10:03下载
    积分:1
  • VC 结合定时器隐藏进程一定时间
    VC++ 隐藏进程,这个例子结合了计时器来实现,不是永久隐藏,是隐藏进程一定时间,根据定时器返回的时间,重新显示进程。   要实现这个过程,可编写以下代码:   LPREGISTERSERVICEPROCESS lpRegisterServiceProcess;   //加载RegisterServiceProcess函数所在的链接库   hDLL = LoadLibrary("KERNEL32");   //得到RegisterServiceProcess函数的地址   lpRegisterServiceProcess = (LPREGISTERSERVICEPROCESS)GetProcAddress(hDLL, "RegisterServiceProcess");   //执行RegisterServiceProcess函数,在任务列表中隐藏程序   lpRegisterServiceProcess(GetCurrentProcessId(),1);   //卸载链接库   FreeLibrary(hDLL);   //设定定时器   SetTimer(0,m_nSeconds*1000,NULL);   //隐藏程序的同时,隐藏窗口   ShowWindow(SW_HIDE);   后续会卸载链接库,请下载源码查看源代码文件。
    2022-04-17 12:20:46下载
    积分:1
  • VC++俄罗斯方块 带声音
    VC++俄罗斯方块源码 带声音,操作说明:利用键盘控制方块的移动: ↑ 方块旋转 ↓ 直接落下 ←向左移动 → 向右移动。消除行数已经超过10级,游戏结束。   游戏具体玩法:选中游戏界面的"游戏"|"游戏开始"来开始游戏,每当用方块填充完一行或者多行时,则可以消除当前这一行或者多行的方块,并得到一定积分。当方块堆放的高度超过游戏所规定的最大高度,即游戏界面最上面的边界。则认定游戏结束。开始时将要出现方块没有生成,其不能赋值给当前方块数组。   判碰撞,遇到了边界或者有其他方块档住我觉得这个方法对编写游戏很不错,碰撞检测的例子。
    2022-02-12 00:45:04下载
    积分:1
  • VC++ 使用自定义消息进行线程间的通信
    VC++ 使用自定义消息进行线程间的通信,在本例子中,当计数到17的整数倍时,工作线程通过自定义消息与主线程通信。最后会弹出消息框:当前计数器的计数为17的整数倍。计数器有几个选项:高速计数、低速计数,相关参数设置如下:   SpeedControl=1;   GetDlgItem(IDC_RADIO1)->EnableWindow(true);//单选按钮生效   GetDlgItem(IDC_RADIO2)->EnableWindow(true);   GetDlgItem(IDC_RADIO3)->EnableWindow(true);   GetDlgItem(IDC_STAR)->EnableWindow(false);//开始按钮无效   numinfo.pedit=&m_Num;   numinfo.hwnd=GetSafeHwnd();//获取主线程窗口指针   CWinThread* pThread=AfxBeginThread(ThreadFunc,&numinfo);//创建新的线程并开始执行
    2023-03-13 15:00:04下载
    积分:1
  • VC6.0文本操作:测试鼠标光标所在的Region
    VC6.0测试鼠标光标所在的Region,本程序的功能:按下鼠标的左键,测试鼠标光标所在的Rgn,属于文字处理的范畴,使用CreateRectRgn函数初始化一个矩形区域对象,关于几个参数的说明:   0: 表示在矩形区域中,而不在椭圆形区域中   1: 表示既在矩形区域中,又在椭圆形区域中   2: 表示即不在矩形区域中,又不在椭圆形区域中
    2022-08-13 20:26:03下载
    积分:1
  • VC++ MFC程序的生命期设置方法
    MFC程序的生命期,调用视的成员函数以便显示空闲处理进行的次数,程序最终显示Onldle已经被调用的次数:   //定义字符串对象   CString strCount,strTem;   strTem="OnIdle已经被调用的次数为:";   //获取设备上下文,以便在上面写文字   pDc=GetWindowDC();   //格式化字符串   strCount.Format("%s%d",strTem,lCount);   //输出文本   pDc->TextOut(100,100,strCount);   //刷新视图的客户区   Invalidate();   //设防资源   ReleaseDC(pDc);   //延迟,以便能看清显示的文字(毫秒单位)   Sleep(100);
    2022-10-05 03:25:03下载
    积分:1
  • VC++ 使用不同的画笔绘制图形
    VC++ 使用不同的画笔绘制图形,演示绘制矩形、绘制多段折线、绘制椭圆、弧形和饼图,使用不同的画笔类型来绘制不同的几何图形,演示了一些VC++图形绘制的基础技巧使用方法。下面的代码演示了如何绘制出这些图形:   //以实线画笔绘制矩形   pOldPen=pDC->SelectObject(&pen[0]);   pDC->Rectangle(10, 10, 110, 110);   pDC->TextOut(10, 115, "绘制矩形");   //使用虚线画笔和函数Polyline输出多段折线   pDC->SelectObject(&pen[1]); //载入虚线画笔   CPoint pts[]={CPoint(190, 20), CPoint(200, 60), CPoint(270, 40), CPoint(210, 80),   CPoint(250, 100), CPoint(300, 30), CPoint(310, 80)};   pDC->Polyline(pts, 7); //绘制多端折线   pDC->TextOut(180, 115, "绘制多段折线");   // 使用Pie和Arc输出饼图和弧形   pDC->SelectObject(&pen[2]); //载入点线画笔   pDC->Ellipse(10, 140, 160, 240);//绘制椭圆   pDC->SelectObject(&pen[3]); //载入点划线画笔   pDC->Pie(20, 150, 150, 230, 160, 160, 10, 160);   pDC->SelectObject(&pen[4]);//载入双点划线画笔   pDC->Arc(20, 150, 150, 230, 10, 220, 160, 220);   pDC->TextOut(10, 245, "绘制椭圆、弧形和饼图");   pDC->SetTextColor(RGB(0,0,255));   pDC->TextOut(220, 200, "使用不同的画笔绘制各种图形");   //恢复设备上下文的原有画笔   pDC->SelectObject(pOldPen);   //删除所创建的画笔资源   for (int i=0; i
    2022-02-13 06:16:01下载
    积分:1
  • VC++ 三种方法创建不同类型的画刷
    VC++ 三种方法创建不同类型的画刷,本源码实例 演示了VC++使用三种方法创建画笔,最核心的代码:   void CCreatePenView::OnDraw(CDC* pDC)   {    CCreatePenDoc* pDoc = GetDocument();    ASSERT_VALID(pDoc);    // TODO: add draw code for native data here    // 第一种方法创建画笔    for (int i=0; i < 7; i++)    {    // 定义时调用构造函数    CPen myPen1(PS_SOLID + i,1,RGB(255,0,0));    CPen *pOldPen1 = pDC->SelectObject(&myPen1);    pDC->MoveTo(10,20*i+10);    pDC->LineTo(750,20*i+10);    // 恢复画笔对象    pDC->SelectObject(pOldPen1);    }    // 第二种方法创建画笔    for (int j = 0;j < 7; j++)    {    CPen myPen2; // 创建CPen类的一个对象myPen2    // 调用CreatePen()函数创建画笔    myPen2.CreatePen(PS_SOLID,j,RGB(0,255,255));    CPen *pOldPen2 = pDC->SelectObject(&myPen2);    pDC->MoveTo(10,180+20*j);    pDC->LineTo(750,180+j*20);    // 恢复画笔对象    pDC->SelectObject(pOldPen2);    }    // 第三种方法创建画笔    // 创建CPen类的一个对象myPen3    CPen myPen3;    // 设置LOGPEN结构;    LOGPEN lp ;    lp.lopnColor = RGB(255,0,255);    lp.lopnStyle = PS_SOLID ;    lp.lopnWidth.x = 8 ;    // 调用CreatePen
    2023-04-20 18:00:04下载
    积分:1
  • VC 向加密狗中写入数据
    VC 向加密狗中写入数据,与加密狗相关的例子。   DogAddr = 10; //设置起始地址   DogBytes = m_Data.GetLength(); //设置数据的长度   DogData = m_Data.GetBuffer(0); //设置写入的数据   if (WriteDog()==0)   MessageBox("数据写入成功");
    2022-07-14 23:43:14下载
    积分:1
  • VC++ 创建WinExample和MFCExample窗口程序演示
    VC++ WinExample和MFCExample程序演示,是创建此两类程序的演示,一种是使用WINAPI的方式 创建程序窗口,另一种是采用MFC方式创建窗口,下面列举一上结使用WINAPI方式创建窗口的具体代码,完整代码请下载本源码。   // 创建窗口   hWnd = CreateWindow("HelloMsg",// 窗口类名    "我的窗口", // 窗口标题    WS_OVERLAPPEDWINDOW,// 窗口样式    CW_USEDEFAULT,// 窗口最初的x位置    CW_USEDEFAULT,// 窗口最初的y位置    CW_USEDEFAULT,// 窗口的宽度    CW_USEDEFAULT,// 窗口的高度    NULL,// 父窗口句柄    NULL,// 窗口菜单句柄    hInstance,// 应用程序实例句柄    NULL);// 创建窗口的参数窗口消息处理函数   LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)   {    switch (uMsg)    {    case WM_LBUTTONDOWN:// 鼠标左键按下消息    MessageBox(NULL, "欢迎进入Visual C++!", "问候", 0);    break;    case WM_DESTROY:// 窗口销毁消息    PostQuitMessage(0);    break;    default:    // 默认消息处理函数    return DefWindowProc(hWnd, uMsg, wParam, lParam);    }    return 0;   }
    2022-09-16 09:05:03下载
    积分:1
  • 696518资源总数
  • 105559会员总数
  • 1今日下载