-
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++ 定义3种样式的ComboBox下拉列表框
VC++ 定义3种样式的ComboBox下拉列表框(组合框),主要是简易式、下拉式、下拉列表式。在简易式或下拉式的编辑框中输入文本,然后点击[
- 2022-02-02 08:39:36下载
- 积分:1
-
VC++ 读取SQL Server数据库结构
VC++ 读取SQL Server数据库结构,读取指定数据库指定数据表的数据结构,演示中仅是读取出字段名、字段类型和字段类型取值大小,只是演示一种获取字段数据的方法:
m_grid.SetExtendedStyle(LVS_EX_FLATSB
|LVS_EX_FULLROWSELECT
|LVS_EX_HEADERDRAGDROP
|LVS_EX_ONECLICKACTIVATE
|LVS_EX_GRIDLINES);
m_grid.InsertColumn(0,"字段名",LVCFMT_LEFT,100,0);
m_grid.InsertColumn(1,"类型",LVCFMT_LEFT,100,1);
m_grid.InsertColumn(2,"大小",LVCFMT_LEFT,100,2);
- 2022-07-17 13:15:00下载
- 积分:1
-
VC++ 使用WinInet通过HTTP协议读取网上文件
VC++ 6.0 使用WinInet通过HTTP协议读取网上文件
在一个按钮事件中定义了网络连接Session:
CInternetSession httpsession;//定义网络连接Session
CString Line;
CInternetFile* webfile=NULL;//定义一个文件对象指针
UpdateData();
if(m_Url.Left(7)!="http://")//如果地址不含HTTP类型标志则添加本地文件类型标志
读出文件前一部分,如果文件多于80行,三示例中只显示前80行.然后更新显示文件:
UpdateData(FALSE);//更新显示文件
delete webfile;//删除文件
GetDlgItem (IDC_SHOW)->EnableWindow (FALSE);//禁用显示按钮
httpsession.Close();//关闭连接
- 2023-09-07 18:35:03下载
- 积分:1
-
VC++在视图中使用鼠标进行绘图操作(涂鸦)
VC++ ——在视图中使用鼠标进行绘图操作(涂鸦),按下鼠标左键,载入"十字"光标,移动鼠标即可实现绘制图形,但窗口不能自动重绘,定义各变量及具体实现:
void CBaseDocViewDemo1View::OnLButtonDown(UINT nFlags, CPoint point)
{
SetCursor(m_Hcursor);//使用新光标
m_bDraw=TRUE;//进入绘图状态
m_pOld=point;
SetCapture();//捕捉鼠标
CRect rect;
GetClientRect(&rect);//获取客户窗口矩形区域
ClientToScreen(&rect);//转换为屏幕坐标
ClipCursor(rect);//限定鼠标不能移出客户窗口
CView::OnLButtonDown(nFlags, point);
}
void CBaseDocViewDemo1View::OnLButtonUp(UINT nFlags, CPoint point)
{
m_bDraw=FALSE;//取消绘图状态
ReleaseCapture();//释放鼠标捕捉
ClipCursor(NULL);//取消鼠标区域的限制
CView::OnLButtonUp(nFlags, point);
}
- 2023-04-03 12:40:04下载
- 积分: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
-
C语言写的超强悍音乐播放器
这是一款用C写的播放器,超强超漂亮,C语言写的超强悍音乐播放器源代码,先来看运行截图,播放器的界面那可是相当漂亮吧。而且播放功能也很强大。程序主界面经过了美化,运行后在Windows托盘处显示图标,这个程序是大家学习C多媒体编程绝佳的范例,对C感兴趣的不要错过哦。
- 2022-02-15 07:45:57下载
- 积分:1
-
带有服务端和客户端的VC++点对点,聊天及源码
带有服务端和客户端的VC++点对点,聊天及数据传输源码,也就是大家熟悉的CS结构,一个是接收消息,一个是发送消息,在服务端和客户端都可以显示消息内容和连接状态。运行的最终效果请参见如图所示。
运行图是Server服务端的效果,客户端没有编译。
void CClientDlg::OnBottonsend()
{
UpdateData();
if (!m_strSend.IsEmpty())
m_client.Send(m_strSend,m_strSend.GetLength());
else
AfxMessageBox("发送内容不能为空!");
}
- 2022-11-23 12:00: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++6.0 在工具栏中图标下面显示文本
VC++6.0 在工具栏中图标下面显示文本,其实这个源码表达的功能,从事电脑的几乎每天都能看到,在Windows界面中,几乎每个图标都会有文字标签,本源码正是实现了在图标的下方添加文字标签,这样更人性化的指示出该图标的作用,本源码运行于VC6.0环境 ,编译运行后如下图所示的效果,面向VC初学者,这是个不错的基础范例。
- 2023-06-03 00:00:03下载
- 积分:1