2013-01-31 22:38
⁄ 工业·编程
⁄ 共 702字
char szHostName[128]; // 本地主机名 memset(szHostName,'0',128); char szHostIP[30]; memset(szHostIP,'0',30); CString m_IP,m_LocalIP; if( gethostname(szHostName,128) == 0) { ...
网络编程阅读全文
2013-01-30 22:35
⁄ 工业·编程
⁄ 共 597字
软件产品卖出去以后,如何防止客户在多台电脑上重复安装呢?最偷懒的方法就是使用别人的硬件加密狗解决,但是这样的话一来随着销售量的积累会增加成本,二来很多客户不想在电脑上插如此多的加密狗(因为其他的软件可能也需要用加密狗,会导致USB接口紧张)。
那我们还可以通过软加密的方式,即唯一序列号的形式,来代替硬件加密狗。
基本思路如下: 1. 在前期给客户安装的都是试用版本。试用形式分为三种:A. 时间限制;B. 次...
软件防盗版阅读全文
2013-01-29 22:32
⁄ 工业·编程
⁄ 共 4197字
一、 修改注册表文件,清除软件使用次数限制。 打开软件,首先跳出来一个注册的框,其中用户名可以随便填写。左下角红色的字显示还可以试用的次数。点击试用以后,可以进入软件。但是试用总共有100次。我们要做的是消除次数限制,无限试用。 原理分析:一般来说,试用次数被记录在注册表中,不管使用了多少次,我们如果能找到这个注册表文件,把已经使用的次数改为0,又可以重头计算,那样不就是无...
软件防盗版阅读全文
2013-01-28 22:30
⁄ 工业·编程
⁄ 共 15497字
在很多情况下,你可能都需要得到微机的硬件信息。比如:你想给你的软件加锁,不让别人随便访问。
最有效的办法是获取CPU的序列号,然后让你的软件只能运行在有这样的CPU序列号的机器上。众所周知,CPU序列号是唯一的!因此,这样就可以为你的软件加锁了。
另外一个需要硬盘信息的例子是:硬盘有几个分区,每个分区各有多少剩余空间。当你正在做一个多媒体应用程序的时候,你可能也需要获得有关声卡、显卡的硬件信息。
首先,你...
软件防盗版阅读全文
2013-01-27 22:27
⁄ 工业·编程
⁄ 共 3277字
#include <winsock2.h> //该头文件定义了Socket编程的功能 #include <stdio.h> //该头文件声明了输入输出流函数 #include <stdlib.h> //该头文件定义了一些通用函数 #include <httpext.h> //该头文件支持HTTP请求 #include <windef.h> //该头文件定义了Windows的所有数据基本型态 #include <Nb30.h> //...
网络编程阅读全文
2013-01-26 22:23
⁄ 工业·编程
⁄ 共 8774字
/* ---------------------------------------------------------- 文件名称:WMI_DeviceQuery.h
作者:秦建辉
MSN:splashcn@msn.com
版本历史: V1.4 2010年05月17日 修正了硬盘序列号处理中的错误。现在和EVEREST Ultimate Edition 5.5一致。
V1.3 2010年05月11日 ...
网络编程阅读全文
2013-01-25 22:19
⁄ 工业·编程
⁄ 共 1069字
(1)新建一个基于对话框的应用程序设计对话框如图
(2)处理GetMac按钮的单击事件,在程序中使用Netbios函数获取网卡地址
typedef struct _ASTAT_ { ADAPTER_STATUS adapt; NAME_BUFFER NameBuff[30]; }ASTAT, * PASTAT; void CGetMACDlg::OnGetmac() { // TODO: Add your control notification handler...
网络编程阅读全文
2013-01-24 22:10
⁄ 工业·编程
⁄ 共 1069字
第一,OnOK()和OnCancel()是CDialog基类的成员函数,而OnClose()和OnDestroy()是CWnd基类的成员函数,即WM消息响应函数。从应用程序结构的角度,拿对话框来说,红色的X对应的是CWnd,而处于对话框中的“确定”、“取消”按钮则对应了CDialog。
第二,OnClose()和OnDestroy()
在单视图程序中,根据<<深入浅出MFC>>所讲,程序退出时执行的操作顺序为(从点X按钮开始) (1)用户点击X退出按钮,发送了WM_CLOSE消息----->响应...
MFC, 区别阅读全文
2013-01-23 06:46
⁄ 工业·编程
⁄ 共 1819字
一、Msdn种Sleep解读
This function suspends the execution of thecurrent thread for a specified interval.
终止线程指定的时间间隔。
void Sleep(
DWORD dwMilliseconds);
Parameters
dwMilliseconds
Specifies the time, in milliseconds, forwhich to suspend execution. A value of zero causes the thread to relinquish theremainder of its time slice to any other thread of equal priority that is readyto run. I...
多线程编程阅读全文
2013-01-22 06:45
⁄ 工业·编程
⁄ 共 2675字
你还再为怎么判断一个程序是否结束而苦恼吗?或许你在想可以用一个循环每隔几秒来判断一次这个进程是否结束,但是这样会有问题,如果间隔时间太短就会很占CPU 资源,间隔时间太长又不能及时知道程序已经结束,或许有人马上就想到WaitForSingleObject 函数,不错Win32 API 提供的这个函数能很好的解决这个问题,但是在使用WaitForSingleObject 函数的过程中很容易忽略一些问题。小弟不才,在这里略说一二。
先看一下函数的原形
D...
多线程编程阅读全文