-
3个VC++ win注册表编程操作实例
本源码中有三个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;
}
- 2022-02-22 09:55:12下载
- 积分:1
-
VC++ MFC DLL的创建:显示问候语信息
VC++ MFC DLL的创建:显示问候语信息,运行效果如上图所示。
- 2022-05-21 08:12:16下载
- 积分:1
-
一个老式的视频播放器程序 VC++编写
VC++编写 实现的一款老式的视频播放器,视频:用Media Player组件制作的视频播放器,看上去,是调用了Windows系统自带的MediaPlayer插件而实现的,具体windows mediaPlayer播放器的功能,使用这个插件,不管是VC或是VB、Delphi,都可以快速实现这个播放器功能,不过播放器播放的格式同样受限于windows mediaPlayer播放器。
- 2023-06-27 02:50:03下载
- 积分:1
-
VC++ 6.0 启动画面编程实例
VC++ 6.0 启动画面编程实例,现在这种软件启动方式比较常见了,打开软件 后,先显示一个启动画面,同时程序开始载入,显示进度条,本例子我觉得演示的挺好,源代码编译环境:vc++6.0,运行截图:请参见测试截图。
- 2022-03-18 03:56:27下载
- 积分:1
-
VC6.0模拟实现模态对话框
VC++6.0模拟实现模态对话框,一般情况下的窗口都是基于此方式 ,当然也有非模态对话框,本款模态对话框,实现要点如下:
void MyDialog::OnButton1() //确定按钮
{
CDialog::OnOK();//调用OnOK()函数退出对话框
}
void MyDialog::OnButton2() //取消按钮
{
CDialog::OnCancel();//调用OnCancel()函数退出对话框
}
void MyDialog::OnButton3() //关闭按钮
{
int nRet = 5; // 自定义返回值
CDialog::EndDialog(nRet); // 调用EndDialog退出对话框
}
- 2022-05-27 01:17:22下载
- 积分:1
-
VC++三种直线扫描转换算法范例演示
本源码演示了三种VC++直线扫描转换算法,这3种方式是:bresenham方法、数值微分法、中点画线法。本程序同时是一个MFC单文档程序,进行直线段扫面转换算法的算法验证。
1.使用Wizard建立单文档程序;
2.绘制20*20的网格线,格子X和Y方向间隔均为20像素,网格起始坐标在(20,20)。我们使用此网格模拟像素矩阵(),格子交叉点是像素中心。
3.输入直线段两端点,可使用以下两种方法之一:
a)对话框输入
b)鼠标在网格内以鼠标左键按下-拖动-抬起方式输入。注意:直线段两端点要自动取整到模拟的像素中心位置
4.进行直线段扫描转换,通过点击鼠标右键调用方式或者菜单调用的方式执行。计算完成后,将扫描转换结果,在模拟的像素矩阵中,使用圆形显示出来。
通过这个实验,我们可以熟悉扫描的算法,其中要注意的是判断直线的斜率,分情况处理竖直直线段、斜率绝对值大于1、斜率绝对值小于1的情况,这部分需要花费一些时间去算。总之还是对扫描算法的理解和编程基矗
- 2022-03-19 09:46:38下载
- 积分:1
-
VC++ 多文档程序实现为新建的文档设置显示字体
VC++ 多文档程序实现为新建的文档设置显示字体,m_str="多文档应用程序实例!";//输出文本
CFontDialog dlg;//字体对话框
dlg.GetCurrentFont(&m_lf);
if(dlg.DoModal()==IDOK)//显示对话框
dlg.GetCurrentFont(&m_lf);//获取用户设置的字体信息
return TRUE;
CString str=pDoc->m_str;//获取输出文本
LOGFONT lf=pDoc->m_lf;//获取字体结构
CFont *pFont=new CFont;
pFont->CreateFontIndirect(&lf);//创建字体
CFont *poldFont=pDC->SelectObject(pFont);//载入DC
pDC->TextOut(40,40,str);//输出文本
pDC->SelectObject(poldFont);//恢复字体
- 2022-12-19 01:50:03下载
- 积分:1
-
VC++ 6.0 定时关机
VC++ 6.0 定时关机,设置时间,自动关机,时间以分钟计,在确定使用本功能前,请确保保存当前工作,系统将于设定的时间到达后自动关机。
- 2022-02-04 23:31:44下载
- 积分:1
-
VC++ 6.0 使用消息实现线程通信
线程通信:使用消息实现线程通信,一个了解多线程与消息通信的例子,以下是实现的主要代码:
LRESULT CThreadCommunicationDlg::OnDisplayResult(WPARAM wParam,LPARAM lParam)
{
int nResult = (int)wParam;
SetDlgItemInt(IDC_STATIC_RESULT,nResult,FALSE);
return 0;
}
void CThreadCommunicationDlg::OnButtonCalculate()
{
m_pCalculateThread=
(CCalculateThread*)AfxBeginThread(RUNTIME_CLASS(CCalculateThread));
Sleep(200);
m_pCalculateThread->PostThreadMessage(WM_CALCULATE,m_nLastOperand,NULL);
}
完整的源代码请下载本源码包。
- 2022-02-02 07:06:27下载
- 积分:1
-
VC++ 使用TRY-THROW-CATCH结构捕获处理异常
VC++ 使用TRY-THROW-CATCH结构捕获处理异常,在编辑框中,要求输入100~500之间的整数,如果超过边界,认为是异常,使用TRY CATCH结构捕获处理异常,异常测试代码如下:
UpdateData(true);
try//捕获异常
{
if(m_num>500)
throw 1;//抛出异常
if(m_num
- 2023-07-20 04:55:03下载
- 积分:1