Welcome 微信登录

首页 / 软件开发 / C++

C++从零开始之指针及其语义和运用

C++从零开始之指针及其语义和运用

C++从零开始之指针及其语义和运用2009-10-31本篇是《》系列的附篇。因友人一再认为《C++从零开始》系列中对指针的阐述太过简略,而提出的各个概念又杂七混八,且关于指针这一C++中的重要概念的运用少之又少,故本篇重点说明在《C++从零开始》系列中提出的数字、地址、指针等基础概念,并给出指针的语义,说明指针和数组的关系,阐述多级指针、多维数组、函数指针、数组指针、成员指针的语义及各自的运用。数字、操作符、类型、类型修饰符在《C++从零开始(三)》中已经...
用C++ Builder对图像进行特殊效果处理

用C++ Builder对图像进行特殊效果处理

用C++ Builder对图像进行特殊效果处理2009-10-31在Windows编程中图像处理相对比较复杂,好在C++ Builder提供了一些图形类,它们通过对Windows中的图形对象进行包装,从而大大简化了图像操作的难度。下面就通过对图像进行柔化、锐化、浮雕效果等几个特殊效果处理来具体说明一下。一、准备工作 位图图形实际上是像素的二维数组,它记录了每个像素的颜色信息,而TCanvas类提供了Pixels属性,用它可以存取指定像素的颜色值,通过这个属...
如何实现进程间数据通讯技术

如何实现进程间数据通讯技术

如何实现进程间数据通讯技术2009-10-311、引言在Windows程序中,各个进程之间常常需要交换数据,进行数据通讯。WIN32 API提供了许多函数使我们能够方便高效地进行进程间的通讯,通过这些函数我们可以控制不同进程间的数据交换,就如同在WIN16中对本地进程进行读写操作一样。典型的WIN16两进程可以通过共享内存来进行数据交换:(1)进程A将GlobalAlloc(GMEM_SHARE...)API分配一定长度的内存;(2)进程A将GlobalA...
ActiveX控件注册的几种方法

ActiveX控件注册的几种方法

ActiveX控件注册的几种方法2009-11-08老妖本文中的程序原为VC++所编写,略改动一些,将程序用C++Builder编写。ActiveX控件是一个动态链接库,是作为基于COM服务器进行操作的,并且可以嵌入在包容器宿主应用程序中,ActiveX控件的前身就是OLE控件。由于ActiveX控件与开发平台无关,因此,在一种编程语言上开发的ActiveX控件可以无须作任何修改,即可在另一种编程语言中使用,其效果如同使用Windows通用控件一样。如:在...
MySql ODBC驱动的使用

MySql ODBC驱动的使用

MySql ODBC驱动的使用2009-11-08我们经常会遇到这样问题,怎样在非web程序或asp程序中使用mysql数据库呢?对于这个问题有两个解决方案:1.使用mysql提供的api函数库。很多有名的mysql客户端工具就是这样实现的,大名鼎鼎的winmysql工具就是这样的。这在大部分的开发工具中都可以实现。比如vc,bcb,delphi,vb等,只要能调用第三方的api就能实现。但对程序员的要求很高,而且要熟悉一套mysql的api函数集,这不是...
怎样在C++ Builder中创建使用DLL

怎样在C++ Builder中创建使用DLL

怎样在C++ Builder中创建使用DLL2009-11-08动态链接库(DLL)是Windows编程常遇到的编程方法,下面我就介绍一下在BCB (C++ Builder下简称BCB) 中如何创建使用DLL和一些技巧。一、创建:使用BCB File|NEW建立一个新的DLL工程,并保存好文件BCB,生成一个DLL的程序框架。1.DllEntryPoint函数为一个入口方法,如果使用者在DLL被系统初始化或者注销时被调用,用来写入对DLL的初始化程序和卸载...
BCB6/Delphi7下完美调用CHM帮助

BCB6/Delphi7下完美调用CHM帮助

BCB6/Delphi7下完美调用CHM帮助2009-11-08本文主要讲解如何在C++Builder6.0及之前的版本中使用Microsoft的新型帮助:"CHM格式帮助文件",对于如何制作CHM格式帮助,以及如何获取帮助文件制作工具,本文只会一笔带过,给出官方链接或推荐其它这方面好的教程,就不再赘述。CHM格式帮助文件制作工具需要Microsoft的html help workshop来制作CHM格式的帮助,可以到Microsoft...
Socks5代理服务

Socks5代理服务

Socks5代理服务2009-11-08假期的时候把socks5代理的RFC全部读完了,有些体会不敢独享,在这里写出来大家一起评论评论,如有错误敬请提出。下面假设使用TCP连接方式。首先需要和代理服务器之间建立连接,这里没什么复杂的,简单的connect(serverIP, serverPort)就可以了。连接成功之后,需要使用send()发送命令字,以便确定是否需要验证,下面是RFC里面的命令字格式:项目版本方式数目连接方式…项目长度111...
编写断点续传和多线程下载模块

编写断点续传和多线程下载模块

编写断点续传和多线程下载模块2009-11-08概述在当今的网络时代,下载软件是使用最为频繁的软件之一。几年来,下载技术也在不停地发展。最原始的下载功能仅仅是个“下载”过程,即从WEB服务器上连续地读取文件。其最大的问题是,由于网络的不稳定性,一旦连接断开使得下载过程中断,就不得不全部从头再来一次。随后,“断点续传”的概念就出来了,顾名思义,就是如果下载中断,在重新建立连接后,跳过已经下载的部分,而只下载还没...
软件换肤技术在BCB中的实现

软件换肤技术在BCB中的实现

软件换肤技术在BCB中的实现2009-11-08吴康彬看一个软件是否优秀,除了功能健全、性能稳定、容易操作之外,软件界面的美观越来越受到人们的关注。人们不满足于传统的矩形windows窗体,不规则窗体的软件到处可见,更进一步发展到软件界面由用户根据自己的爱好自由控制,真正实现了软件对用户的友好性。而要实现这一功能,软件换肤技术就是基础。下面我就介绍一种简单明了的方法来制作一个登陆对话框 ,本程序编程环境C++Builder: 首先由程序员根据功能要求定义...
Internet服务端口测试程序的设计与实现

Internet服务端口测试程序的设计与实现

Internet服务端口测试程序的设计与实现2009-11-08一、程序的实用背景上网的朋友越来越多,遇到的问题也越来越多,最常见的就是关于域名服务器(DNS)、邮件服务(SMTP)和POP3的配置问题。例如,选用哪一个DNS,202.96.0.133还是202.96.26.243?记不清ISP的邮件服务器和域名服务器的IP地址,202.96.26.243还是245?另外一个问题就是,我们在下载文件的时候,往往面临从多个不同主机下载的选择(象sunsite...
用C++ Builder编写Tray程序

用C++ Builder编写Tray程序

用C++ Builder编写Tray程序2009-11-09Tray(托盘)是Windows9x任务条上的一个特殊区域,它的技术名称为“任务栏布告区”,一些软件(如金山词霸Ⅲ)运行时会在托盘上放置一个图标,使用户一眼就能知道这个程序正在后台运行,要想激活它也很容易,通常只需单击一下这个图标即可,非常方便。Tray的编程比较特殊,但并不难,主要包括图标、工具提示和消息等三个方面,它是Shell编程的一部分。ShellAPI提供了She...
将位图旋转90度

将位图旋转90度

将位图旋转90度2009-11-09本文将介绍如何将一张位图旋转90度。向工程添加一个Timage控件,取名为Image1。工作原理是:创建一个位图缓冲区用于存储中间量,将原位图的每一行的像素转换为每一列然后存放在我们创建的位图缓冲区中。最后,将旋转后的位图从缓冲区存回原位图。//定义缓冲位图并剪切图形区域Graphics::Tbitmap *bufferbitmap=new Graphics::Tbitmap();bufferbitmap->Wid...
用Winsock实现语音全双工通信

用Winsock实现语音全双工通信

用Winsock实现语音全双工通信2009-11-09一、引言Windows 95作为微机的操作系统,已经完全融入了网络与通信功能,不仅可以建立纯Windows 95环境下的“对等网络”,而且支持多种协议,如TCP/IP、IPX/SPX、NETBUI等。在TCP/IP协议组中,TPC是一种面向连接的协义,为用户提供可靠的、全双工的字节流服务,具有确认、流控制、多路复用和同步等功能,适于数据传输。UDP协议则是无连接的,每个分组都携带...
帮助程序员解脱困境的十条技巧

帮助程序员解脱困境的十条技巧

帮助程序员解脱困境的十条技巧2009-11-09安全专家Michael Howard和Keith Brown提出了十条技巧来帮助您解脱困境。安全问题涉及许多方面。安全风险可能来自任何地方。您可能编写了无效的错误处理代码,或者在赋予权限时过于慷慨。您可能忘记了在您的服务器上正在运行什么服务。您可能接受了所有用户输入。如此等等。为使您在保护自己的计算机、网络和代码方面有个良好开端,这里展示了十条技巧,遵循这些技巧可以获得一个更安全的网络策略。1. 信任用户的输...
用任务条跟踪文件下载

用任务条跟踪文件下载

用任务条跟踪文件下载2009-11-17注意:本文代码不是最快的和最有效的代码。我有一套更快的代码。希望你在阅读本文之后能编写出自己的高效代码。概要程序用线程管理下载过程,这样主程序就不会被封闭,程序还有中止下载的功能。下载过程在线程中单独进行,并随时刷新屏幕上的任务条状态。创建下载文件:CInternetSession netSession;CStdioFile *file;file = netSession.OpenURL(char url,1,INT...
<< 181 182 183 184 185 186 187 188 189 190 >>