`
helpbs
  • 浏览: 1165079 次
文章分类
社区版块
存档分类
最新评论
文章列表
原地址:http://www.yesky.com/20030211/1651565_2.shtml问题一:如何实现指定盘符的光驱弹出弹入  钥匙在这里:void ctrl_cdrom_door(LPCTSTR drivename ,//驱动器的名字如f:等.bool fOpen file://弹出时用true,弹入时用false){ TCHAR devstr[128],ctrlstr[128]; wsprintf(devstr,_T("open %s type cdaudio alias mycd wait"),drivename); wsprintf(ctrlstr,_T( ...
序列化初步之三(翻译) http://www.codeproject.com/cpp/serialization_primer3.asp在前两部分,我们学习了在通常情况下,如何为序列化提供有力的支持。在这一部分,我们将学习序列化任何一种对象时的特殊的规则。这里有四个常用的参考例子。每个例子都由前一个构成。 Ø 序列化一个简单类 Ø 序列化一个派生类 Ø 序列化一个同源的聚集类 Ø 序列化一个异源的聚集类 我们的Searialize()方法将返回以下状态码之一: l Success l InvalidFormat l
简单快速的哈夫曼编码(翻译) http://www.codeproject.com/cpp/Huffman_coding.asp 本文描述在网上能够找到的最简单,最快速的哈夫曼编码。本方法不使用任何扩展动态库,比如STL或者组件。只使用简单的C函数,比如:memset,memmove,qsort,malloc,realloc和memcpy。 因此,大家都会发现,理解甚至修改这个编码都是很容易的。 背景<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> ...
在VC开发中,当我们新建一个应用程序工程时,如果在第四页中选择上下文敏感帮助(Context-sensitive Help)(缺省情况下并没有选择),则应用程序建立以后,会产生一个HLP目录。缺省情况下,系统的帮助文件是winhelp格式的。后缀为*.HLP。其中有一个资源索引文件,后缀为*.hm。这是相应上下文敏感帮助的应用程序资源的索引信息。另外还有微软帮助文件制作工具winhelp。后缀为*.hpj。由于现在*.hlp格式的帮助有些过时,*.chm格式的帮助文件已经成为主流。本文给出作者实际经历的制作过程的主要步骤。 将hlp格式的帮助改为chm帮助的步骤如下:<?xml:name ...
序列化初步(翻译)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 原著:http://www.codeproject.com/cpp/serialization_primer2.asp 在第一部分,我们学到了如何通过CArchive类的serialize()函数来序列化一个简单对象。象下面的程序这样: int CFoo::serialize (CArchive* pArchive) { int nStatus = SUCCESS; ...
序列化初步(翻译)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 原著:http://www.codeproject.com/cpp/serialization_primer1.asp序列化是从固定存储介质中读和写一个对象的过程,例如磁盘文件。序列化一个对象需要三个要素: Ø 一个描述数据文件的CFile对象 Ø 一个提供序列化上下文的Carchive对象 Ø 一个可以被序列化的对象<?xml:namespace prefix = v ns ...
新手指南-指针(翻译)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 原著:http://www.codeproject.com/cpp/pointers.asp什么是指针? 和其它变量一样,指针是基本的变量,所不同的是指针包含一个实际的数据,该数据代表一个可以找到实际信息的内存地址。这是一个非常重要的概念。许多程序和思想依靠指针作为他们设计的基础。 开始 怎样定义一个指针呢?除了你需要在变量的名称前面加一个星号外,其它的和别的变量定义一样。 ...
void FontScoreDC::draw_poly_bezier(Point start, Point ctrl1, Point ctrl2, Point end, const Color& clr)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> { HBRUSH hBrush ; HBRUSH oldBrush ; POINT pt[8] ; hBrush = CreateSolidBrush(RGB(clr.r_, ...
介绍 窗口中的矩形,带圆角的矩形和椭圆只能由GDI在轴向上绘制。假如有人希望在Windows NT下绘制旋转或歪斜的图形,他可以使用世界坐标系变换。很不幸的是在Windows 95/98下,是没有世界坐标系变换的。作为一个跨平台的解决方案,就需要自己做更多的工作。矩形能由四边形模拟,这样它就能旋转和歪斜了。然而,椭圆又该怎么办呢?基本上有三个选择。 两种选择 使用一个定制的函数来画椭圆。 椭圆的数学模型相对简单,而且还有用于在标准文本中旋转椭圆的修改过的Bresenham方程。然而,这种方法必须自己执行光栅操作,这样在绘制宽线时就变得复杂了。这种努力只有在向一个脱离屏幕的表面(比如Direct ...
在Visual C++中,应用程序通常是使用CView中提供的打印功能,在OnPrint()或OnDraw()中向打印机输出。但是对于对话框中的数据,或基于对话框的程序,打印成了一件繁琐的工作。 该段代码向用户提供了PrintListCtrl()函数,用于打印用户在对话框或FormView中的CListCtrl(控件必须是Report View 形式的)控件中的内容。在打印过程中,根据控件中每列标题的宽度计算打印输出时各列的宽度,并根据数据的行数自动分页。在本代码的基础上稍作修改,就可以适应各种数据的输出。 (用法:)该段代码使用Visual C++ 6.0, 使用Windows API来完成所 ...
在Visual C++中,应用程序通常是使用CView中提供的打印功能,在OnPrint()或OnDraw()中向打印机输出。但是对于对话框中的数据,或基于对话框的程序,打印成了一件繁琐的工作。 该段代码向用户提供了PrintListCtrl()函数,用于打印用户在对话框或FormView中的CListCtrl(控件必须是Report View 形式的)控件中的内容。在打印过程中,根据控件中每列标题的宽度计算打印输出时各列的宽度,并根据数据的行数自动分页。在本代码的基础上稍作修改,就可以适应各种数据的输出。 (用法:)该段代码使用Visual C++ 6.0, 使用Windows API来完成所 ...
控件通知消息 在《深度解析VC中的消息(上)》中,我们提到了消息的分类有3种:窗口消息、命令消息和控件通知消息,我们这里要谈的是最后一种:控件通知消息。 控件通知消息,是指这样一种消息,一个窗口内的子控件发生了一些事情,需要通知父窗口。通知消息只适用于标准的窗口控件如按钮、列表框、组合框、编辑框,以及Windows公共控件如树状视图、列表视图等。例如,单击或双击一个控件、在控件中选择部分文本、操作控件的滚动条都会产生通知消息。 她类似于命令消息,当用户与控件窗口进行交互时,那么控件通知消息就会从控件窗口发送到它的主窗口。但是这种消息的存在并不是为了处理用户命令,而是为了让主窗口能够改 ...
一、 原理 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> ---- 虽然MicroSoft支持MIDI文件,然而Visual C++或MFC并没有创建任何组件来实现这种支持,但是MicroSoft API提供了三种不同的方法来实现MIDI的播放: MCI(The Media Control Interface)。这是最基本的方法,本文将详细讨论这种方法。 流缓冲器。这种格式允许应用程序为MIDI数据分配缓冲器。在需要精确控制MIDI播放的 ...
问题:一般情况下我们用UPDATE_COMMAND_UI来修改菜单的状态(enable/disable,check/uncheck, change text),但这个方法在一个基于对话框上的菜单却没有效果。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> void CTestDlg::OnUpdateFileExit(CCmdUI* pCmdUI) { pCmdUI->Enable(FALSE); pCmdUI->SetCheck(T ...
1.从View菜单中选择Resource Symbols,加入一个新的ID(在本例中假设为<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> ID_INDICATOR_PROGRESS_PANE),让计算机为该ID赋值也许是较好的选择. 2. 在MainFrm.cpp中寻找indicators数组,然后在该数组中加入上面新增加的ID, 请将它放在其它ID的后面,这将使以后的进度条出现在状态行的最右边,如果你 不想 让进度条出现在最右边,你也可以将ID ...
Global site tag (gtag.js) - Google Analytics