自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

felicity_one的博客

嵌入式学习过程中遇到的种种基情与心情

  • 博客(610)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 MFC通过ODBC调用访问SQL Server中的数据库内容的一个简单例子

以下内容是在MFC C++应用程序中通过ODBC调用SQL Server中创建的数据库的流程,并提供了一个简单的例子。

2025-06-10 17:36:39 270

原创 [例9.2]一个简单的MFC ODBC的程序(不通过向导选择数据源)

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022说明:本例程的内容和书中的实现方式相差较大,由于开发环境不一样,本节内容是自己在网上搜索了很多资料后实现的,关于SQL Server,ODBC Driver的安装,DNS数据源的添加,数据库的创建及表格的创建等,可参考其他内容。

2025-06-10 17:34:09 325

原创 创建到SQL Server的新数据源的配置

或者我的其他文章:。。

2025-06-09 15:08:53 517

原创 SQL Server和ODBC安装过程中的常见问题

书籍:《SQL Server 2016 从入门到实战(视频教学版)》——孙亚男 郝军开发环境:SQL Server 2022。

2025-06-09 11:10:09 899

原创 SQL Server, ODBC 驱动, MFC应用程序之间的关系

SQL Server、ODBC 驱动与 MFC 应用程序的关系可以从 ​​、​​、​​ 三个层面理解。三者协同工作,实现 Windows 桌面应用(MFC)对 SQL Server 数据库的访问与操作。

2025-06-07 09:54:27 1021

原创 SQL Server创建一个简单的数据库

若是在原来的SQLQuery1.sql文档中直接删除旧的语句,编写新的SQL语句,在cardb2数据库中创建car表,会提示一些错误。由于是第一次使用SSMS,在编辑SQL语句时,错误列表中总会出现一些无厘头的错误提示,如“表。已存在但插入时提示“对象名‘dbo.car’无效”及列名无效”,折腾了好久后,因为我发现我的车名不小心是nvarchar(MAX)时想改,改不了了,哈哈。发现直接忽略这些提示即可,主要看执行SQL语句时的结果。至此,一个简单的表就创建好了。关闭窗口后,可在 ​。

2025-06-07 09:41:13 501

原创 配置 DSN 数据源前是否需要先创建数据库?​

​,其中最关键的参数是 ​。

2025-06-06 15:48:10 1263

原创 ​DSN(数据源名称)必须和数据库的库名一样吗?

无需强制一致。

2025-06-06 15:45:16 904

原创 打开SSMS后,有必要先连接localhost或者是远程服务吗?

在打开 SQL Server Management Studio(SSMS)后,​​。

2025-06-06 14:07:38 657

原创 Microsoft ODBC Driver 18 for SQL Server的安装

安装方式选择为:ODBC Driver for SQL Server SDK。双击刚下载好的msodbcsql.msi开始运行。开发或调试使用 ODBC API 的应用程序。包含开发所需的头文件(如。安装客户端组件 + SDK。下是否存在头文件和库文件。

2025-06-06 11:24:03 1004

原创 SQL Server 2022的安装

将刚下载好的vs_SSMS.exe放到某个目录,然后双击开始安装,进入安装SQL Server 2022时的安装媒体文件夹目录。取消适用于SQL Server的Azure的选项,下一步。下载SQL Server 2022 Developer。安装完毕,点击SSMS跳转到SSMS下载网址.PolyBase配置,直接下一步。安装全新SQL Server。忽略防火墙警告,继续下一步。设置身份验证模式和添加管理员。选择全新安装,继续下一步。选择要安装的组件和位置。服务器配置,直接下一步。正在安装,等待安装结束。

2025-06-06 09:48:22 260

原创 [例8.24]单独使用类CSemaphore实现线程同步

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。

2025-06-05 10:06:49 327

原创 如何通过信号量对象实现互斥对象的功能

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.24]单独使用类CSemaphore实现线程同步可以通过配置信号量(CSemaphore)的初始计数和最大计数为 1,将其用作互斥锁(Mutex)。这种技术本质上是将信号量转换为​二进制信号量​,从而实现互斥访问。

2025-06-04 16:35:03 909

原创 详细介绍CSemaphore

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.24]单独使用类CSemaphore实现线程同步CSemaphore是MFC(Microsoft Foundation Classes)中用于实现​信号量同步​​的类,封装了 Windows API 的函数。它通过​计数信号量​​机制控制对共享资源的并发访问,适用于需要​​的场景(如连接池、资源池管理)。

2025-06-04 16:30:12 556

原创 [例8.23]单独使用类CEvent实现线程同步

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。

2025-06-04 16:05:54 177

原创 详细介绍CEvent

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.23]单独使用类CEvent实现线程同步CEvent是 MFC(Microsoft Foundation Classes)中用于线程同步的核心类,封装了 Windows API 的函数,提供了一种灵活的线程间通信机制。它通过​​(Event Object)的状态(有信号/无信号)控制线程的执行流程,适用于需要​​或​​的场景。

2025-06-04 15:20:24 876

原创 [例8.22]单独使用CMutex类实现线程同步

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。

2025-06-04 14:43:02 291

原创 详细介绍CMutex

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.22]单独使用CMutex类实现线程同步CMutex是 MFC(Microsoft Foundation Classes)中用于实现​跨进程互斥​​的同步对象,封装了 Windows API 的Mutex机制。与不同,CMutex可以用于不同进程间的资源同步,适用于需要全局互斥访问共享资源的场景(如跨进程文件操作、数据库连接池管理等)。

2025-06-04 14:04:50 898

原创 [例8.21]联合使用类CCriticalSection和CSingleLock来同步线程

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。

2025-06-04 13:44:08 324

原创 详细介绍CSingleLock

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.21]联合使用类CCriticalSection和CSingleLock来同步线程是 MFC(Microsoft Foundation Classes)中用于线程同步的 RAII(Resource Acquisition Is Initialization)类,封装了对或其他同步对象(如CMutex)的加锁和解锁操作。它通过自动管理锁的生命周期。

2025-06-04 13:31:36 696

原创 详细介绍CWinThread

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022CWinThread是 MFC(Microsoft Foundation Classes)中用于多线程编程的核心类,封装了 Windows 线程 API(如),提供了更高级的线程管理功能。它支持​工作者线程​(Worker Threads)和​用户界面线程​(User Interface Threads),适用于需要与 MFC 框架集成的多线程场景。

2025-06-04 11:22:03 760

原创 [例8.20]单独使用CCriticalSection对象来同步线程

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。

2025-06-04 10:52:44 228

原创 详细介绍CCriticalSection

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.20]单独使用CCriticalSection对象来同步线程是MFC(Microsoft Foundation Classes)中用于实现线程同步的核心类,封装了 Windows API 的 ​临界区(CRITICAL_SECTION)​ 机制。它通过独占锁的方式确保同一时刻仅有一个线程访问共享资源,适用于单进程内高频短时同步场景。

2025-06-04 09:30:59 578

原创 CSyncObject 类详解

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022是 MFC(Microsoft Foundation Classes)中用于多线程同步的核心基类,封装了 Windows API 的同步对象(如互斥量、信号量、事件等)。它提供了线程间协调操作的抽象接口,帮助开发者避免资源竞争和数据不一致问题。

2025-06-03 17:47:22 565

原创 [例8.19]AfxBeginThread创建用户界面线程

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。

2025-06-03 17:35:52 987

原创 DECLARE_DYNCREATE,IMPLEMENT_DYNCREATE和DECLARE_DYNAMIC,IMPLEMENT_DYNAMIC 可以互换使用吗?

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.19]AfxBeginThread创建用户界面线程在 MFC(Microsoft Foundation Classes)中,和是两组功能不同的宏,​不可互换使用​​。

2025-06-03 16:44:06 556

原创 DECLARE_DYNCREATE,IMPLEMENT_DYNCREATE和DECLARE_DYNAMIC,IMPLEMENT_DYNAMIC 的差异

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.19]AfxBeginThread创建用户界面线程在 MFC(Microsoft Foundation Classes)中,和是用于支持 ​​ 和 ​​ 的关键宏。

2025-06-03 16:39:12 687

原创 详细介绍DECLARE_DYNCREATE和IMPLEMENT_DYNCREATE

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.19]AfxBeginThread创建用户界面线程。

2025-06-03 16:32:11 394

原创 [例8.18]_beginthreadex函数的简单示例

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。

2025-06-03 14:26:24 264

原创 [例8.17]利用互斥对象同步_beginthread创建的线程

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。

2025-06-03 14:07:18 129

原创 error C1189: #error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll

​​配置项​​​​动态CRT(/MD)​​​​静态CRT(/MT)​​​​MFC库类型​​必须使用共享DLL(动态)可使用静态库​​运行时依赖​​需要MFC的DLL文件无需外部DLL​​错误场景​​:动态CRT(/MD) + 静态MFC → 冲突。​​正确组合​​:动态CRT + 动态MFC(共享DLL)静态CRT + 静态MFC。

2025-06-03 11:14:50 275

原创 [例8.16]利用_beginthread不断创建线程

define WM_SHOW_THREADCOUNT WM_USER + 5 //定义一个自定义Windows消息,用于通知主线程更新界面中的线程计数器。//声明消息函数//定义消息函数//处理自定义消息 WM_MYMSG,根据参数 wParam 的值动态更新界面://当 wParam == 1 时,启用按钮 IDC_BUTTON1。//否则,将全局变量 g_nCount(已创建的线程数)格式化为字符串,显示在控件 IDC_THREAD_COUNT 中。

2025-06-03 10:40:29 269

原创 分析_beginthread(), _endthread()和_beginthreadex(), _endthreadex()的差异

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:CRT库中的多线程函数。

2025-05-30 16:48:37 632

原创 详细分析 _beginthreadex() 和 _endthreadex()

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.18]_beginthreadex函数的简单示例。

2025-05-30 16:34:40 736

原创 详细分析 _beginthread() 和 _endthread()

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022内容:[例8.16]利用_beginthread不断创建线程。

2025-05-30 15:54:27 452

原创 Windows同步机制:临界区、互斥对象、事件对象与信号对象

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。

2025-05-30 15:09:22 748

原创 [例8.15]使用信号量对象同步线程

书籍:《Visual C++ 2017从入门到精通》环境:Visual Studio 2022。

2025-05-30 14:47:34 289

原创 详细介绍信号量对象

​信号量是一个计数器,表示当前可用资源的数量。线程通过​。

2025-05-30 14:19:39 450

原创 详细介绍临界区对象

​临界区是一段代码区域,访问共享资源(如全局变量、文件句柄)时必须通过同步机制保护。临界区对象(Critical Section)是Windows提供的一种轻量级同步对象,用于管理对这段代码的访问。​。

2025-05-30 13:27:56 427

原创 Windows互斥对象(Mutex)详解

​互斥对象是一种内核级同步对象,表示一个​。

2025-05-30 11:38:37 454

visual C++ 2017从入门到精通

给看我专栏的朋友们参考。 专栏链接:https://blog.csdn.net/qq_20725221/category_5707019.html 代码仓库:https://gitcode.com/qq_20725221/VisualC2017

2025-04-24

JNI程序员指南与规范

英文版

2024-12-17

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除