当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: 目前,许多应用程序都有在一定限制条件内免费使用的功能,利用该功能可以有效限制非法用户的使用,同时,还可以使合法用户在充分了解软件优缺点的基础上,再决定是否购买。
 

 

 ·c++的类与c#的类(1)    »显示摘要«
    摘要:一、简介 面向对象(oo)编程在应用设计中已经发展二十来年了。程序不再是一系列函数的堆彻(象一些范例那样的程序),而是对象的集合,每个对象都有其独特的属性和方法来与其它对象打交道。 "c"语言系列是面向对象设计发展的最好例子。c++为开发者提供了优秀的面向对象编程工具,程序员可以显式地创建构造函数,拷贝构造函数,重载操作符,使用模板等等。 象c++这样复杂语言的主要问题是程序员要花上好几个月来掌握......
 ·c++ 中的singleton 类的实现(1)    »显示摘要«
    摘要:《设计模式》中把 singleton 写成返回指针: class singleton{public:static singleton* instance();protected:singleton();private:static singleton* _instance;}; 相应的实现 cpp 文件是: singleton* singleton::_......


用C++ Builder设定程序使用时间

目前,许多应用程序都有在一定限制条件内免费使用的功能,利用该功能可以有效限制非法用户的使用,同时,还可以使合法用户在充分了解软件优缺点的基础上,再决定是否购买.本文称实现这种功能的方法为保护方法.保护方法的利用在保护正版软件的基础上,既有效地扩大了软件的使用范围,又给用户提供了进行充分选择的机会.

1.方法1与方法2 【程序编程相关:无盘网吧速度比有盘网吧快吗?

编程思路 【推荐阅读:无盘网络日常维护及注意事项:

tregistry *reg = new tregistry; 【扩展信息:网吧无盘问题(3)

在程序主窗体的oncreate事件过程中,定义注册表tregistry类对象指针reg:

通过其属性rootkey定位注册表根键,如:

reg->rootkey = hkey_users;

//可根据需要选择

利用openkey方法打开根键下的一个自定义主键,例如:

reg->openkey(“.default\\myprogram\\records”, false)

若该主键不存在(即首次运行本程序时),需要利用createkey()方法创建该主键,并将其打开,写入子键及键值如下:

//“count”键值记录本程序运行次数

reg->writeinteger(“count”,1);

//“flag”键值记载本程序使用是否有过期的记录

reg->writeinteger(“flag”,0);

//“first”键值记录首次运行本程序的日期

reg->writedate(“first”,date());

//“last”键值记录上一次运行本程序的日期

reg->writedate(“last”,date());

通过对“first”键值的读取获得首次运行程序时的日期,再与系统当前的日期进行比较,判断是否超过指定的天数而决定是否终止程序的运行,从而实现使用天数的限制.通过对“count”键值的读取获得程序使用的次数,判断是否超过指定的次数而决定是否终止程序的运行,以实现使用次数的限制.

此外,通过读取“flag”键值可以了解程序是否有过期记录,其值为1表示程序使用已经过期;读取“last”键值可以取得上一次使用本程序的日期.


...   下一页
 ·c++的底层机制    »显示摘要«
    摘要:c++为我们所提供的各种存取控制仅仅是在编译阶段给我们的限制,也就是说是编译器确保了你在完成任务之前的正确行为,如果你的行为不正确,那么你休想构造出任何可执行程序来。 但如果真正到了产生可执行代码阶段,无论是c,c++,还是pascal,大家都一样,你认为c和c++编译器产生的机器代码会有所不同吗,你认为c++产生的机器代码会有访问限制吗?那么你错了。什么const,private,统统没有(c......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE