对教材中的一个程序的讨论
HOT

先看湖南自学考试“计算机及应用”专业《高级语言程序设计》教材中的一段程序,这是从键盘输入10个字符,写到文本文件的程序,这里仅把打开文件的盘符和目录做了修改,其中myturboc是D盘中已经建立的目录,char2.txt是并不存在的文件。#include<stdio.h>main(){ FILE *fp; int i; char c; if((f...
阅读全文

剖析MFC六大关键技术之初始化过程<三>
HOT

 转了一个大圈,我们仿佛又回到了SDK编程的开始。但现在我们现在能清楚地知道,表面上MFC与SDK编程截然不同,但实质上MFC只是用类的形式封装了SDK函数,封装之后,我们在WinMain()函数中只需要几行代码,就可以完成一个窗口程序。我们也由此知道了应如何去封装应用程序类(CWinApp)和主框架窗口类(CFrameWnd)。下面把上开始设计这两个类。  为了简单起见,我们忽略这两个类的基类和...
阅读全文

剖析MFC六大关键技术之初始化过程<二>
HOT

 大家再下想,我们还要我们MFC“隐藏”更多的东西:WinMain()函数,设计窗口类,窗口注册,消息循环,回调函数……我们马上想到封装想封装他们。大家似乎隐约地感觉到封装WinMain()不容易, 觉得WinMain()是一个特殊的函数,许多时候它代表了一个程序的起始和终结。所以在以前写程序的时候,我们写程序习惯从WinMain()的左大括写起,到右大括弧返回、结束程序。   我们换一个角度去想...
阅读全文

剖析MFC六大关键技术之初始化过程<一>
HOT

我并不认为MFC减轻了程序员们的负担,MFC出现的目的虽然似乎是为了让程序员不用懂得太多就可以进行视窗编程,但本人在MFC里徘徊了很久很久(因为那时没有书本详细介绍MFC的原理),毫无收获。可能朋友们会说,怎么一定要了解MFC的具体呢,“黑箱”作业不行吗?这不是微软的初衷吗?  不行!!!如果这样,我宁愿永远不选择MFC!在学电脑之前,本人学习的东西大都与艺术不无关系,小学时参加过全国书画比赛获银...
阅读全文

MFC六大关键技术之运行时类型识别
HOT

 运行时类型识别(RTTI)即是程序执行过程中知道某个对象属于某个类,我们平时用C++编程接触的RTTI一般是编译器的RTTI,即是在新版本的VC++编译器里面选用“使能RTTI”,然后载入typeinfo.h文件,就可以使用一个叫typeid()的运算子,它的地位与在C++编程中的sizeof()运算子类似的地方(包含一个头文件,然后就有一个熟悉好用的函数)。typdid()关键的地方是可以接受...
阅读全文

VC实现光驱、软驱、USB的禁用和启用
HOT

由于工作的实际需要,需要对光驱,软驱,USB的启用和禁用实现控制。参考大家提供的对网卡禁用的代码,实现了光驱,软驱,USB的启用和禁用。主要实现代码如下:// 必要的头文件和要链接的LIB文件#include <setupapi.h>#include <shlwapi.h>#pragma comment(lib, "setupapi.lib")#pragma comment...
阅读全文

用Visual C++实现CPU特权指令操作
HOT

一、引言  80x86系列CPU具有四级保护机制。在Windows 9X操作系统只使用0级和3级,以便于移植到精简指令集的计算机上,如RS4000等,这些处理器一般只有两个特权级,即系统级和用户级。在Windows 9X系统环境,应用程序运行在Ring3(3级),如果要运行特权指令就必须进入Ring0(0级)。在同一任务内,实现特权级从外层到内层变换的普通途径是使用段间调用指令CALL,通过调用门...
阅读全文

Visual C++ 6.0制作QQ连连看外挂
HOT

 下载本文源代码  一、制作思路   1、得到QQ连连看窗口指针,从而得到CDC;   2、对每幅图片取4个点进行编码;   3、实现连连看的算法;   4、模拟鼠标消去块;   界面如下:  二、部分代码//定义的数据bool flagx=true; int point1x,point1y,point2x,point2y;//保存需要单击点的位置struct MYCOLOR{ COLORREF ...
阅读全文

使用Visual C++编程取得CPU信息
HOT

利用利用CPUID 汇编指令(机器码:0FH A2H, 如果你的编译器不支持CPUID 指令,只有emit 机器码了), 该指令可以被如下CPU识别:   Intel 486 以上的CPU,  Cyrix M1 以上的CPU,  AMD Am486 以上的CPU  (1) 取CPU OEM 字符串, 判断CPU 厂商   先让EAX=0, 再调用CPUID   Inel的CPU将返回: EBX:7...
阅读全文

用Visual C++ 6.0模拟仿真生态系统(下)
HOT

仿真结果及进一步的扩展  我们用前面的程序对一个细胞群进行仿真,初始时所有的细胞群都是活着的,但由于过分拥挤,到第二代只有四个角上的少量细胞存活了下来(图一),然后他们不断的繁衍,逐渐向空旷的群体中央扩散(图二、图三),当从四角繁衍到中央时,中央也变的拥挤,细胞群又开始从拥挤的中央地带逐渐的向相对疏松的周遍区域扩散(图四、图五)、当繁衍到一定程度时,细胞会大致均匀的散布于整个观察空间,此时活着的细...
阅读全文

用Visual C++ 6.0模拟仿真生态系统(上)
HOT

 引言  近几年,人工生命AL(Artificial Life)的研究越来越显示出其重要性,并迅速成为对传统生物学研究的重要辅助手段。地球上的生命是碳-链基的生命,而人工生命则是把这种真实的生命形式移植到实验室中,其实是试图建立一种人工环境,在此环境中,使用计算机对其进行仿真,使人们能更好的了解环绕着人们的整个世界。本文通过程序示例对人工生命的计算机仿真的基本思路、实现方法作了浅显的描述。  人工...
阅读全文

碎片图像无缝拼合技术的VC++实现
HOT

摘要:本文讲述了在Microsoft Visual C++ 6.0下多幅碎片图像无缝拼合技术的实现原理和过程,并给出了部分关键代码以供参考。  关键字:Microsoft Visual C++ 6.0、图像、无缝拼合、位图文件   一、 引言   在测绘、文博等行业经常会遇到这样一种情况:观测对象比较大,为保证分辨率又不能将其全部照下,只能进行局部照相,事后再将这些局部照相的重合部分去掉,拼合成一...
阅读全文

Windows 2000下Api函数的拦截分析
HOT

简介:   Api拦截并不是一个新的技术,很多商业软件都采用这种技术。对windows的Api函数的拦截,不外乎两种方法,第一种是Mr. Jeffrey Richter 的修改exe文件的模块输入节,种方法,很安全,但很复杂,而且有些exe文件,没有Dll的输入符号的列表,有可能出现拦截不到的情况。第二种方法就是常用的JMP XXX的方法,虽然很古老,却很简单实用。   本文一介绍第二种方法在Wi...
阅读全文
127 页 / 共 196