关于API SDK和MFC的对照学习

简介:

   如鹏网的《C语言也能干大事》教程中使用的是C语言调用API SDK的方式来进行Windows程序的编写,有的同学在学习的过程中到网上查找课上教的一些函数的写法,但是有时候会碰到一些用MFC来进行调用的方式,不知道怎么转换成API SDK的方式。首先要肯定和鼓励这位同学的想法,因为他已经开始明白语言是相通的这个道理了。


   MFC是微软使用C++语言对API SDK进行封装后的一个Windows开发框架库,MFC对API SDK的封装简单,可以看到“赤果果”的API SDK的影子,MFC的包装一般只是隐藏了资源句柄,在改写成API的方式的时候一般只要将方法最开始增加一个参数,然后这个参数填相应的句柄就可以了。



举例说明:
例1
MFC代码:edit1->SetWindowText(TEXT("hello"));
edit1表示一个控件,因此改写到API方式的话只要如下调用:
SetWindowText(hwndEdit,TEXT("hello"))//hwndEdit是控件的句柄
例2
void CMainFrame::OnStartTimer() 
{
  m_nTimer = SetTimer(1, 2000, 0);
}
CMainFrame是一个窗口,因此如下改装:
void Main_OnStartTimer() 
{
  m_nTimer = SetTimer(hwnd,1, 2000, 0);//hwnd是窗口的句柄
}
例3
CClientDC dc(this); 
dc.SelectObject(&pen); 
CClientDC是一个画布,因此如下改装:
SelectObject(hdc,&pen);//hdc是画布的句柄。
“方法最开始增加一个参数,然后这个参数填相应的句柄”,嘎嘎,一点技术含量都没有,不过确实就是这么简单,

例1
MFC代码:edit1->SetWindowText(TEXT("hello"));
edit1表示一个控件,因此改写到API方式的话只要如下调用:
SetWindowText(hwndEdit,TEXT("hello"))//hwndEdit是控件的句柄
例2
void CMainFrame::OnStartTimer() 
{
  m_nTimer = SetTimer(1, 2000, 0);
}
CMainFrame是一个窗口,因此如下改装:
void Main_OnStartTimer() 
{
  m_nTimer = SetTimer(hwnd,1, 2000, 0);//hwnd是窗口的句柄
}
例3
CClientDC dc(this); 
dc.SelectObject(&pen); 
CClientDC是一个画布,因此如下改装:

SelectObject(hdc,&pen);//hdc是画布的句柄。



“方法最开始增加一个参数,然后这个参数填相应的句柄”,嘎嘎,一点技术含量都没有,不过确实就是这么简单.


PS:感觉这篇文章的确在利用SDK编程的时候避免因为需要再了解MFC的麻烦!赞一个










本文转自 qq414207614 51CTO博客,原文链接:http://blog.51cto.com/skytina/1405181,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
Java API 开发工具
支付与银行业线上客户协议应用中的DocuSign集成方式选择——SDK和API
跨境支付公司和Docusign进行集成时,碰到问题时的解决方案。分别用SDK和API集成后的各自使用体验。
42 2
支付与银行业线上客户协议应用中的DocuSign集成方式选择——SDK和API
|
4月前
|
存储 缓存 网络协议
dpdk课程学习之练习笔记二(arp, udp协议api测试)
dpdk课程学习之练习笔记二(arp, udp协议api测试)
63 0
|
8月前
|
JavaScript
Vue基础学习——Vue3的Options-API
Vue基础学习——Vue3的Options-API
|
6月前
|
安全 API 开发工具
获取仓库列表接口可以通过SDK或者REST API两种方式调用
获取仓库列表接口可以通过SDK或者REST API两种方式调用
50 2
|
2月前
|
Web App开发 前端开发 JavaScript
如何快速与呼叫中心系统CTI/API/SDK接口集成
由于呼叫中心系统涉及通信、CTI、终端设备、中继线路等技术与概念,从事信息管理系统、ERP、CRM、工单系统等的研发人员一般不是非常熟悉这部分技术,当需要提供具备呼叫中心能力的解决方案时,往往要用较多的时间来研究这些相对复杂的技术,对接过程比较长,开发调试有一定的阻力,基于此,我们提出一种更加简便高效的集成方法,可以零代码集成呼叫中心平台,实现项目快速上线。
如何快速与呼叫中心系统CTI/API/SDK接口集成
|
7月前
|
JavaScript API 开发工具
SAP Marketing Cloud Restful API SDK 使用案例分享
SAP Marketing Cloud Restful API SDK 使用案例分享
66 0
|
3月前
|
JavaScript 前端开发 IDE
Vue3【为什么选择Vue框架、Vue简介 、Vue API 风格 、Vue开发前的准备 、Vue项目目录结构 、模板语法、属性绑定 、 】(一)-全面详解(学习总结---从入门到深化)
Vue3【为什么选择Vue框架、Vue简介 、Vue API 风格 、Vue开发前的准备 、Vue项目目录结构 、模板语法、属性绑定 、 】(一)-全面详解(学习总结---从入门到深化)
48 1
|
3月前
|
存储 API 开发工具
如何使用Python SDK与OpenAI Assistants API构建助手?
在这篇文章中,我们将介绍如何使用Python SDK构建最基本的Assistant,你只需要在代码中添加你自己的OpenAI API密钥即可。
111 0
|
4月前
|
Kubernetes API 网络架构
k8s学习-CKS真题-启用API Server认证,禁止匿名访问
k8s学习-CKS真题-启用API Server认证,禁止匿名访问
65 0
|
5月前
|
JSON 前端开发 API
从零开始学习React-axios获取服务器API接口(五)
从零开始学习React-axios获取服务器API接口(五)
53 0

热门文章

最新文章