-
VC++ 源码演示雷达工程数据的可视化与处理
VC++综合实例源码,演示雷达工程数据的可视化与处理,这个源代码来自一本VC++书籍中,不知道现在是否还可以用,里面雷达测试文件,不过我没有调试成,源代码文件是比较完整的,大部分代码中都有注释,你可以了解一些关于雷达数据读娶界面标尺运用、鼠标操作控制、坐标的显示与控制、映射模式(像素)、鼠标位置标识、BMP格式重新排列数据、滚动窗口、内存控制等多个方面的操作技巧,是一个比较综合的VC++学习实例。
- 2023-03-01 01:05:04下载
- 积分:1
-
VC 6.0 获得驱动器序列号
VC 6.0 获得驱动器序列号,本例子中可以指定驱动器分区,也就是大家说的D盘、E盘,每个磁盘分区的序列号,这个序列号标识ID分区后由系统自动指定,我们可编写以下代码实现此功能:
//获得实际存储驱动器号的字符串长度
dwNumBytesForDriveStrings=GetLogicalDriveStrings(0,NULL)*sizeof(TCHAR);
//如果字符串不为空,则表示有正常的驱动器存在
if (dwNumBytesForDriveStrings!=0) {
//分配字符串空间
hHeap=GetProcessHeap();
lp=(LPSTR)HeapAlloc(hHeap,HEAP_ZERO_MEMORY,
dwNumBytesForDriveStrings);
//获得标明所有驱动器的字符串
GetLogicalDriveStrings(HeapSize(hHeap,0,lp),lp);
//将驱动器一个个放到下拉框中
while (*lp!=0) {
Driver->AddString(lp);
lp=_tcschr(lp,0)+1;
}
}
- 2022-02-06 01:57:21下载
- 积分:1
-
VC++演示如何使用insert语句批量向数据库插入数据
VC++演示如何使用insert语句批量向数据库插入数据,这个我感觉挺有用处吧,一般情况下,我们录入都是一条一条的,但信息量较大的时候,就需要批量插入数据了,我们可以先读取外部指定格式的文件,然后将数据转换为可插入的格式,然后使用insert批量向数据库中插入数据,有效提升工作效率。本示例测试前请先准备好数据库并连接上,否则会报错。
- 2022-02-26 09:24:35下载
- 积分:1
-
VC 创建内存映像文件对象并使用
VC++6.0 创建内存映像文件对象并使用,实现了写入内存映射文件和从内存映射文件中读取数据,比如将数据从内存映射文件读出,实现方法如下:
void CFileMapTransTxtDlg::OnRead()
{
//创建内存映像对象
HANDLE hMapping;
LPSTR lpData;
hMapping=CreateFileMapping((HANDLE)0xFFFFFFFF,NULL,PAGE_READWRITE,0,0x100,"MYSHARE");
if(hMapping==NULL)
{
AfxMessageBox("CreateFileMapping() failed.");
return;
}
//将文件的视图映射到一个进程的地址空间上,返回LPVOID类型的内存指针
lpData=(LPSTR)MapViewOfFile(hMapping,FILE_MAP_ALL_ACCESS,0,0,0);
if(lpData==NULL)
{
AfxMessageBox("MapViewOfFile() failed.");
return;
}
//给这段映像内存的数据赋给本地变量
m_strDest.Format("%s",lpData);
//释放映像内存
UnmapViewOfFile(lpData);
//更新数据
UpdateData(FALSE);
}
- 2022-05-17 02:25:47下载
- 积分:1
-
VC++6.0释放EXE资源文件
VC++6.0释放EXE资源文件,要释放的程序是一个简单的MessageBox,基于MFC对话框程序,先插入已经存EXE(或DLL)文件到VC资源文件中。
/* 函数说明:释放资源中某类型的文件
/* 参 数:新文件名、资源ID、资源类型
/* 返 回 值:成功返回TRUE,否则返回FALSE
BOOL CTestDlg::ReleaseRes(CString strFileName,WORD wResID,CString strFileType)
{
// 资源大小
DWORD dwWrite=0;
// 创建文件
HANDLE hFile = CreateFile(strFileName, GENERIC_WRITE,FILE_SHARE_WRITE,NULL,
CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
if ( hFile == INVALID_HANDLE_VALUE )
{
return FALSE;
}
// 查找资源文件中、加载资源到内存、得到资源大小
HRSRC hrsc = FindResource(NULL, MAKEINTRESOURCE(wResID), strFileType);
HGLOBAL hG = LoadResource(NULL, hrsc);
DWORD dwSize = SizeofResource( NULL, hrsc);
// 写入文件
WriteFile(hFile,hG,dwSize,&dwWrite,NULL);
CloseHandle( hFile );
return TRUE;
}
- 2022-12-26 04:00:03下载
- 积分:1
-
VC++ 在Combobox组合框的下拉列表框中实现自动选择
VC++ 在组合框的下拉列表框中实现自动选择,当在Combobox组合框中键入字符时,组合框会根据用户的输入在列表框中自动选择匹配的项,其实就是大家熟悉的搜索提示,用户输入时,Combobox下拉框会智能匹配用户的输入内容,显得很智能的下拉框。
- 2022-08-06 12:06:50下载
- 积分:1
-
VC++ 创建生成大文件
VC创建大文件的例子,这个例子是VC++源码实例,面向VC++6.0运行环境。测试时注意生成的路径,要重新 设置一下,生成文件 不是问题,但生成大文件 往往会导致一系列问题,这个源码的实例向大家介绍如何避免出现这些问题。
// 处理出错信息
//获得信息
LPVOID lpMsgBuf; //Windows will allocate
::FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,0,
GetLastError(),MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), //默认语言
(LPTSTR)&lpMsgBuf, 0, NULL );
//显示
::MessageBox(0, (LPCTSTR)lpMsgBuf, _T("GetLastError"), MB_OK|MB_ICONINFORMATION );
//lpMsgBuf中是你要的错误提示.
//释放内存
::LocalFree( lpMsgBuf );
return;
- 2022-02-26 16:50:15下载
- 积分:1
-
VC++ 实现对软件的简单加密(注册)功能
VC++ 实现对软件的简单加密,本程序是通过C盘序列号来加密文件,实现软件的注册功能,软件号和C盘序列号同时正确才可验证,而C盘的序列号是唯一的,获得c盘序列号的代码如下:
DWORD VolumeSerialNumber;
GetVolumeInformation("c:",NULL,12,&VolumeSerialNumber,NULL,NULL,NULL,10);
VolumeSerialNumber^=0x12345678;//本机c盘序列号简单运算
m_usernum=VolumeSerialNumber;
UpdateData(false);
然后通过序列的判断,来验证加密是否正确,比如下边的代码来做加密验证:
UpdateData(true);
DWORD num;
num=m_usernum;
num^=0x1999aa98+12;//加密算法
if(!(num==m_serialnum))
{
AfxMessageBox("输入的序列号不正确!");
return;
}
- 2022-11-07 22:05:03下载
- 积分:1
-
VC++ MFC绘图打印技术范例
VC++ 6.0 基于MFC的绘图及打印技术实例,附上了完整源码,打开程序后,可单击“测试”按钮,弹出绘图设置窗口,设置好参数绘图,然后打印出数据。方法步骤:
//创建画笔C++对象
CPen* pPenBlue = new CPen;
//创建画笔
pPenBlue->CreatePen(PS_SOLID,pDoc->m_thick,pDoc->m_color);
//选中当前画笔,并保存以前的画笔
CPen* pOldPen = pDC->SelectObject(pPenBlue);
POSITION posi=pDoc->m_PointList.GetHeadPosition();
while(posi)
{
CPoint point(pDoc->m_PointList.GetNext(posi));
pDC->Ellipse(point.x,point.y,point.x+
pDoc->m_long,point.y+pDoc->m_short);
}
//恢复旧画笔
pDC->SelectObject(pOldPen);
//删除新建的画笔对象
delete pPenBlue;
//设置映射模式
pDC->SetMapMode(MM_ANISOTROPIC);
CSize winSize = CSize(1024, 768);
//设定窗口大小
pDC->SetWindowExt(winSize);
//得到实际设备每逻辑英寸的象素数量
int xLogPixPerInch,yLogPixPerInch;
xLogPixPerInch=pDC->GetDeviceCaps(LOGPIXELSX);
yLogPixPerInch=pDC->GetDeviceCaps(LOGPIXELSY);
//得到设备坐标和逻辑坐标的比例
int xExt,yExt;
xExt=winSize.cx*xLogPixPerInch/96;
yExt=winSize.cy*yLogPixPerInch/96;
//设定视口大小
pDC->SetViewportExt(xExt,yExt);
- 2022-01-25 14:09:09下载
- 积分:1
-
VC++ 农历日历/日程记事
这个小程序由VC++6.0代码编写,以阴历和阳历相结合的方式显示的日历,起的名字叫做"桌面精灵"吧.其中还包含二十四节气以及一些中西方节日,这些特殊的日期都用不同的颜色进行标注。右键单击主界面,在弹出的菜单中选择“窗口设置”命令,打开“窗口设置”模块,在该模块中,用户可以设置窗口的显示风格,包括普通窗口、总在最前和嵌入桌面3种,还可以进行系统设置,包括开机自动运行、鼠标穿透和透明度设置。通过设置这些风格可以更灵活的使用桌面精灵模块。
新建备忘录:右键单击主界面,在弹出的菜单中选择“新建备忘录”命令,打开“新建备忘录”窗口,在该模块中,可以添加备忘录信息,用来提醒用户,一以免忘记重要的工作。
- 2023-08-29 05:45:03下载
- 积分:1