Welcome 微信登录

首页 / 软件开发 / C++

VC获取物理网卡的MAC地址

VC获取物理网卡的MAC地址

VC获取物理网卡的MAC地址2010-09-04 博客园 大豆男生获取网卡的MAC地址的方法很多,如:Netbios,SNMP,GetAdaptersInfo等。经过测试发现 Netbios 方法在网线拔出的情况下获取不到MAC,而 SNMP 方法有时会获取多个重复的网卡的MAC,试来试去还是 GetAdaptersInfo 方法比较好,网线拔出的情况下可以获取MAC,而且很准确,不会重复获取网卡。GetAdaptersInfo 方法也不是十全十美,也存在...
C++启蒙之用C++制作程序

C++启蒙之用C++制作程序

C++启蒙之用C++制作程序2008-01-05 天极 陶刚现在我们已经解决了原始的书店问题了:我们必须读取销售记录文件并生成一个报告,显示出每本书的总共收入、平均售价和销售数量。练习24:编写一个程序来读取几个事务记录。对于每个新读取的事务记录,检测它的ISBN是否与前面的相同,计算每个ISBN有多少个事务记录。通过给出几条事务记录来测试这个程序。这些事务应该有多个ISBN,但是每个ISBN的记录应该集合在一起。我们假设某个给定的ISBN的所有事务记录是...
C++启蒙之C++中的类

C++启蒙之C++中的类

C++启蒙之C++中的类2008-01-05 天极 陶刚在解决我们的书店问题之前,我们需要理解的唯一的剩余问题是如何编写一个数据结构(data structure)来表示我们的事务数据。在C++中我们通过定义类(class)来定义自己的数据结构。类机制是C++中最重要的特性之一。实际上,C++设计的主要聚焦点是使我们能够定义类类型(class types),使它的操作与内建类型一样自然。我们已经看到了类库类型(例如istream和ostream),它们都是...
共享内存封装类

共享内存封装类

共享内存封装类2010-09-18awzzz本文介绍一个共享内存封装类,使共享内存的使用更简单化,特别适合更懒的程序员使用:-)一、实现目标:简单化使用共享内存二、使用说明:1. 创建共享内存CSFMServer对象, 需要为CSFMServer对象指定专用的名字,只要系统中存在一个这样的对象,就可以在其他程序中简单方便地使用该共享内存。CSFMServer(char *szFileName, char *szMapName, DWORD dwSize);...
C++运算符重载转换运算符

C++运算符重载转换运算符

C++运算符重载转换运算符2008-01-05 PConline 管宁为什么需要转换运算符?大家知道对于内置类型的数据我们可以通过强制转换符的使用来转换数据,例如(int)2.1f;自定义类也是类型,那么自定义类的对象在很多情况下也需要支持此操作,C++提供了转换运算符重载函数,它使得自定义类对象的强转换成为可能。转换运算符的生命方式比较特别,方法如下:operator 类名();转换运算符的重载函数是没有返回类型的,它和类的构造函数,析构函数一样是不遵循...
二进制文件随机存取的两种方法

二进制文件随机存取的两种方法

二进制文件随机存取的两种方法2010-09-18韩耀旭以下是本人使用C++实现二进制文件随机存取的两种常用方法,写出来,让您见笑,还望方家点拨。第一种方法:根据记录编号,对每一条记录固定位置存取,实现随机存取设计思想:每一条记录的记录编号,决定该记录的存取位置。如:第一条记录记录编号是1,放在位置1;第二条记录的记录编号是2,放在位置2;………,依次类推。要修改第二条记录,首先根据记录编号计算出该记录的存储位置,然...
C++运算符重载赋值运算符

C++运算符重载赋值运算符

C++运算符重载赋值运算符2008-01-05 PConline 管宁自定义类的赋值运算符重载函数的作用与内置赋值运算符的作用类似,但是要要注意的是,它与拷贝构造函数与析构函数一样,要注意深拷贝浅拷贝的问题,在没有深拷贝浅拷贝的情况下,如果没有指定默认的赋值运算符重载函数,那么系统将会自动提供一个赋值运算符重载函数。赋值运算符重载函数的定义与其它运算符重载函数的定义是差不多的。下面我们以实例说明如何使用它,代码如下://程序作者:管宁//站点:www.cn...
干干净净杀死进程

干干净净杀死进程

干干净净杀死进程2010-09-18northtibet最近在写程序时碰到这样一个问题:我想将文件备份到网络驱动器上,但是有一些文件正在被其它程序使用,处于打开状态,而且是被独占打开,这时是没法对文件进行备份操作的。因此,要想备份这些文件,必须将打开它们的那些进程kill掉。那么如何干净地杀死这些打开文件的进程呢?相信看完本文后,自然会有办法解决!其实,在较新的Windows操作系统版本中有一个工具程序叫tskill.exe,用它就可以解决问题。如图一所示...
C++的iostream标准库介绍

C++的iostream标准库介绍

C++的iostream标准库介绍2008-01-05 PConline 管宁我们从一开始就一直在利用C++的输入输出在做着各种练习,输入输出是由iostream库提供的,所以讨论此标准库是有必要的,它与C语言的stdio库不同,它从一开始就是用多重继承与虚拟继承实现的面向对象的层次结构,作为一个c++的标准库组件提供给程序员使用。iostream为内置类型类型对象提供了输入输出支持,同时也支持文件的输入输出,类的设计者可以通过对iostream库的扩展,...
一个透明位图类的例子

一个透明位图类的例子

一个透明位图类的例子2010-09-18 vckbase 刘晖编写一个简单的透明位图类,有时候可以为程序润色不少,下面是我写的一个程序的UI,个人觉得蛮有意思的。图一 外观这个类可以插入到任何一个程序当中,它提供一个统一的接口,接口函数接收图象的资源索引号、长、宽3个参数。当然,你也可以加上一个父窗口的指针参数,用来决定该类对象Create行为,便于指定该图象代表的窗口应该依附在哪个父窗口之上。编写这个类需要熟悉对CRgn类的运用。如成员函数Combine...
C++箴言:如何访问模板化基类中的名字

C++箴言:如何访问模板化基类中的名字

C++箴言:如何访问模板化基类中的名字2008-01-05 假设我们要写一个应用程序,它可以把消息传送到几个不同的公司去。消息既可以以加密方式也可以以明文(不加密)的方式传送。如果我们有足够的信息在编译期间确定哪个消息将要发送给哪个公司,我们就可以用一个 template-based(模板基)来解决问题:class CompanyA {public: ... void sendCleartext(const std::string& msg); ...
无须SMTP服务器中转直接发送电子邮件

无须SMTP服务器中转直接发送电子邮件

无须SMTP服务器中转直接发送电子邮件2010-09-18 vckbase 谢红伟前言大家一定熟悉Foxmail中的“特快专递”,它能直接将电子邮件发送到对方的邮件服务器中,而不需要经过SMTP服务器中转,这样做有什么好处?第一:发送速度比较快,不需要等SMTP服务器对邮件进行查毒、派发、验证;第二:你可以及时掌握邮件是否发送成功的信息。有时我们用Outlook发送一封邮件,到第二天对方都没收到,可我这边确实已经发送成功了,只好让对...
实现数字钟的另一种方法

实现数字钟的另一种方法

实现数字钟的另一种方法2010-09-18 vckbase 庄三少前不久在VCKBASE网上看到一篇关于数字电子钟的程序,下来以后用了以后感觉很不错,做的相当漂亮。闲暇琢磨之余,发现了另外一种实现数字钟的方法,虽然效果没有前面那位同志好,但本着学习的态度我把我的想法发布一下。希望对大家有借鉴意义。前面那位作者用的方法是在静态控件之上绘制数字,然后根据不同的数字在不同的区域上显示不同的颜色。这样作的难点在于如何精确计算不同的数字所对应的坐标和区域,而且一旦静...
用C++ Bulider在WIN.INI中保存信息

用C++ Bulider在WIN.INI中保存信息

用C++ Bulider在WIN.INI中保存信息2008-01-05现在许多软件把程序中需要的数据保存在注册表中,这样当用户装的软件越来越多时,致使注册表越来越庞大,容易使系统出错。当然,微软也建议在注册表中保存数据,但当我们需要保存的数据不多时完全可以把数据保存在WIN.INI中,这样可以很方便地维护,实现方法相对来说比较简单。下面我以Borland C++ Builder为例来说说如何实现。原理其实很简单,只需调用API的 WriteProfileS...
如何截取QQ密码和聊天内容、去掉QQ广告栏、添加QQ尾巴

如何截取QQ密码和聊天内容、去掉QQ广告栏、添加QQ尾巴

如何截取QQ密码和聊天内容、去掉QQ广告栏、添加QQ尾巴2010-09-18 vckbase 谢红伟前言思路分析进入QQ进程远程注入DLL截取QQ登录密码截取本机QQ账号和昵称截取聊天内容增加QQ尾巴去掉QQ广告栏郑重申明结束语前言中国网民没有不熟悉QQ的,QQ玩家没有不知道珊瑚虫和彩虹的去广告显IP版QQ的,有段时间QQ尾巴也很盛行,就是每次聊天的时候它自动在你的聊天文字后面加一段话,欺骗你的QQ网友上当。如今的网络就好比武侠小说里的江湖,行走江湖的剑客...
用C++ Builder建立数据库VCL使用经验

用C++ Builder建立数据库VCL使用经验

用C++ Builder建立数据库VCL使用经验2008-01-05随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不写一行程序就生成漂亮的数据库程序。下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍:一、DBGrid控件1.设置DBGrid的字段显示宽度属性为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字段值。例如,你希...
基于图形用户界面的RunAs程序(GUI RunAs)

基于图形用户界面的RunAs程序(GUI RunAs)

基于图形用户界面的RunAs程序(GUI RunAs)2010-09-18 vckbase.com Zhefu Zhang环境:VC6 SP5,VS 2005,Win2k+,Platform SDK为了在另一个用户上下文中启动程序,Win2k 提供了一个命令行程序工具——RunAs。在网上(如www.codeguru.com)也能找到同样功能的程序和代码。有人要求我为这个工具做一个图形用户界面的版本。本文就是为此而写的。为了不&ld...
QuickReport基本知识

QuickReport基本知识

QuickReport基本知识2008-01-05一、 简单了解各控件功能以下是各控件最简单的使用功能,其他功能依具体的实现而介绍。1. TquickRep:带有坐标,作为其他报表控件(如TQRBand)的容器,它的Band属性可以自动添加各种类型的TQRBand.2. TQRLabel:打印静态的文本(即不是根据数据库值来改变的),作用象Tlabel , Caption的内容就打印出来的内容。3. TQRDBText:打印数据库字段值,一个值一行。作用象...
<< 61 62 63 64 65 66 67 68 69 70 >>