
VC MFC
文章平均质量分 64
夏卡罗
学习方向:.Net软件开发,DLL开发,Active,OLE组件技术,数据库,嵌入式开发,自动化 PLC
渐渐蜕变.......
展开
-
.NET DllImport特性
DllImport特性在进行互操作的时候,我们需要用DllImport来标识该方法是非托管的代码方法,在编译器编译的时候它能够正确的认识出被该特性标记的是外来代码段,所以能顺利的通过编译,当到达程序运行的时候,也能够正确的认识出该代码是引用非托管的代码,这样就让我们的CLR去加载非托管DLL文件,然后查找到入口点进行调用;我们拿上一篇文章中的示例来讲吧;[DllImport("Win32D转载 2014-09-09 21:40:55 · 1643 阅读 · 0 评论 -
c++经典面试
<br />#include <IOSTREAM.H><br />#include <CSTDLIB><br /> <br />char* GetString1()<br />{<br /> <br /> char p[] = "Hello World";<br /> <br /> return p;<br /> <br />}<br />char* GetString2()<br />{<br /> <br /> char *p = "Hello World";<br />转载 2011-03-16 01:06:00 · 582 阅读 · 0 评论 -
模拟ATM 机系统软件
系统分析设计ATM自动取款机系统的开发流程遵循实时系统的统一开发过程,主要生命周期包括系统分析、概要设计、详细设计和实现与测试,采用的软件开发方法为迭代式。开发流程详细说明如下。系统分析。主要标识系统涉及的用例,以及为每个用例创建的事件流。而且,还需要定义初始功能测试用例,作为检查最后实现是否正确和完备的工具。系统分析还需要显示用例隐含的类,利用分析类图进行文档化处理。概要设计。使用CRC卡,定义每个类的职责。首先通过全局类图定义设计的静态结构,然后定义设计的动态结构,使用状态图定义主要控制类的动态行为,为原创 2010-07-15 16:25:00 · 3394 阅读 · 0 评论 -
DLL动态链接库的工作原理
"动态链接"这几字指明了DLLs是如何工作的。对于常规的函数库,链接器从中拷贝它需要的所有库函数,并把确切的函数地址传送给调用这些函数的程序。而对于DLLs,函数储存在一个独立的动态链接库文件中。在创建Windows程序时,链接过程并不把DLLs文件链接到程序上。直到程 序运行并调用一个DLLs中的函数时,该程序才要求这个函数的地址。此时Windows才在DLLs中寻找被调用函数,并把它的地址传送给调用程序。采用这种方法,DLLs达到了复用代码的极限。 动态链接库的另一个方便之处是对动态链接库中原创 2010-06-27 07:36:00 · 1610 阅读 · 0 评论 -
ATL基本使用
由于ATL已经被集成在Microsoft Visulal Studio的Visual C++开发环境中,因此要使用ATL必须先安装Visual C++。在下面的讨论中有关COM的基本知识请参阅有关的文档,这里不再详细说明。给出的图是在Microsoft Windows 98平台下Visual Studio 6.0的使用示意图。 使用ATL开发一个COM应用基本可以分为以下几个步骤: 创建一个新的ATL工程,并对工程的选项进行适当的配置。 向新创建的工程添加新的ATL类,并对该类进行一些初始配置工原创 2010-06-22 21:21:00 · 2623 阅读 · 0 评论 -
在一个MFC的对话框应用程序中,实现程序开始时就隐藏对话框界面方法(收集)
有很多应用程序要求一起动就隐藏起来,这些程序多作为后台程序运行,希望不影响其他窗口,往往只在托盘区显示一个图标。这些程序通常都是对话框程序,而对话框在初始化的过程上与SDI、MDI的初始化是不同的,对话框只需要DoModule或者是CreateDialog等等对话框函数调用一次便可,SDI、MDI则要好几步才行。这样看来,对话框在使用方法上面是隐藏了不少细节的,其中就没有SDI、MDI所要求的Sh原创 2010-04-02 16:43:00 · 2292 阅读 · 0 评论 -
VC++API函数介绍
1. API之网络函数 WNetAddConnection 创建同一个网络资源的永久性连接 WNetAddConnection2 创建同一个网络资源的连接 WNetAddConnection3 创建同一个网络资源的连接 WNetCancelConnection 结束一个网络连接 WNetCancelConnection2 结束一个网络连接 WNetCloseEnum原创 2010-03-31 12:14:00 · 3555 阅读 · 0 评论 -
VC消息大全
hwnd 32位的窗口句柄。窗口可以是任何类型的屏幕对象,因为Win32能够维护大多数可视对象的句柄(窗口、对话框、按钮、编辑框等)。message 用于区别其他消息的常量值,这些常量可以是Windows单元中预定义的常量,也可以是自定义的常量。wParam 通常是一个与消息有关的常量值,也可能是窗口或控件的句柄。lParam 通常是一个指向内存中数据的指针。由于WPara原创 2010-03-31 11:59:00 · 957 阅读 · 0 评论 -
assert() 函数用法
assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行,原型定义: #include void assert( int expression ); assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息, 然后通过调用 abort 来终止程序运行。原创 2010-03-28 20:42:00 · 576 阅读 · 0 评论 -
OnPaint()与OnEraseBkgnd()
在MFC中 任何一个window组件的绘图 都是放在这两个member function中在设定上 OnEraseBkgnd()是用来画底图的 而OnPaint()是用来画主要对象的举例说明 一个按钮是灰色的 上面还有文字则OnEraseBkgnd()所做的事就是把按钮画成灰色而OnPaint()所做的事 就是画上文字既然这两个member function都是用来画出组件的那为何还要分OnP原创 2010-03-28 19:42:00 · 731 阅读 · 0 评论 -
如何在 C++ 中将字符串转换为浮点数
在使用 Microsoft C 或 C/C++ 开发的应用程序中,sscanf() 函数可以很好地替代 atof() 函数,将数字字符串转换为浮点数。如果字符串表示的数无效,atof() 将返回零值,而 sscanf() 会返回更多有用的错误信息。应用程序可以将 sscanf() 返回的错误值用于 matherr() 函数以执行错误处理。除非真正发生了数学异常,否则 atof() 函数原创 2010-03-28 14:24:00 · 2708 阅读 · 0 评论 -
如何通过引用向 MASM 传递常见 C 类型
下面的代码示例演示如何通过引用传递变量的类型字符短,和长从 Microsoft C 的某个程序,Microsoft 宏汇编程序 (MASM) 程序。 下面的示例包括一个 C 文件和 $ 三个不同的程序集文件。三个程序集文件演示了如何通过变量引用来传递在小型和大型模型中的 MS-DOS 和 Windows NT 链接仅在适当的程序集模块的平面模型中以 C 模块。 请注意若要生成平面模型 Wi原创 2010-03-28 14:19:00 · 734 阅读 · 0 评论 -
CProgressCtrl 进度条的使用
进度条介绍 “进度条控件”是一个窗口,应用程序可以使用这个窗口来表明一个冗长操作的进度。它由一个从左到右,用系统高亮色逐渐填充的矩形组成。 CProgressCtrl类提供了Windows通用进度条控件的机能。这个控件(也就是CProgressCtrl类)只有对运行在Windows 95和Windows NT 3.51或更高版本下的程序才是有效的。 进度条控件具有一个范围和一个当原创 2010-03-28 14:02:00 · 1917 阅读 · 1 评论 -
在 ActiveX 控件中处理错误
如果控件中出现了错误条件,您可能需要向控件容器报告此错误。根据出错的情况,有两种报告错误的方法。如果错误发生在属性的 Get 函数或 Set 函数中,或者发生在 OLE 自动化方法的实现中,则控件应调用 COleControl::ThrowError,后者将发出信号通知控件用户已发生错误。如果错误发生在任何其他时间,则控件应调用 COleControl::FireError,后者将引发常用原创 2010-01-17 19:23:00 · 2926 阅读 · 0 评论