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

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

保护方法

本文介绍4种利用C++ Builder 实现的保护方法:

利用注册表限制程序使用的天数,比如限制使用30天;

利用注册表限制程序使用的次数,比如限制使用45次;

设定程序 使用的截止日期,比如设截止日期为2001年8月31日;

限制每次使用程序 的时间,比如一次允许使用50分钟。

这些保护方式既可以单独使用,也可 以几个同时使用实现综合保护。

编程思路

1.方法1和方法2

在程序主窗体的OnCreate事件过程中,定义注册表TRegistry类对象指针 Reg:

TRegistry *Reg = new TRegistry;

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

Reg->RootKey = HKEY_USERS;

//可根据需 要选择

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

Reg->OpenKey(“.DEFAULT\\Myprogram\\Records”, false)

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

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

Reg- >WriteInteger(“Count”,1);

时间: 2024-12-09 20:18:04

用C++ Builder设定程序使用时间的相关文章

屏蔽Windows XP“设定程序访问和默认值”

想来大家现在已经为自己的系统打上SP2补丁了吧,不知道你注意到没有,打完SP2补丁之后,在控制面板的"添加/删除程序"对话框中会添加一项叫做"设定程序访问和默认值"的选项,如图1所示."设定程序访问和默认值"简化了指定用于活动(如 Internet 冲浪和发送电子邮件)的默认程序的过程.另外,通过该功能用户还可以指定从"开始"菜单.桌面和其他位置可以访问的程序.该功能可以给我们设定程序带来很大的方便,但是,如果你是和他人共用一

mfc-c++builder 关闭程序,终止运行

问题描述 c++builder 关闭程序,终止运行 我在新建的窗口上新建一个按钮,点击按钮结束程序运行,这个功能应该怎么实现 解决方案 这样就可以了: Application->Terminate(); // 用于关闭整个程序 解决方案二: MFC中可以是发送WM_CLOSE消息给窗体 解决方案三: 暴力+不负责任的退出方式是:exit(0).当然你要是发消息的话就是WM_CLOSE.如果你发不了消息的话就想办法调别的窗口类发送这个消息 解决方案四: PostMessage(WM_CLOSE);

VB.NET编程之托盘程序篇

编程|程序 本文程序的设计及运行环境 (1)Windows 2000 Service (2)Net Framework SDK 正式版 静态托盘程序的编写过程 所谓静态托盘程序是指程序运行后,在系统托盘区的图标处于静止状态的托盘程序.动态托盘程序正好与之相反,它是指在系统托盘区图标呈现动画效果的一类托盘程序.下面就来探讨一下VB.NET是如何实现静态托盘程序. .Net FrameWork SDK为编写托盘程序提供了一个组件:NotifyIcon组件.NotifyIcon组件是一个WinForm

现流行数据库程序开发工具的比较分析

比较|程序|数据|数据库 [程序开发系列一]现流行数据库程序开发工具的比较分析 武汉华中师大信管系 谢刚 摘要:随着计算机技术不断发展,各种数据库编程工具也随着发展,使当今的大多数程序开发人员可以摆脱枯燥无味的用计算机指令或汇编语言开发软件,而是利用一系列高效的.具有良好可视化的编程工具去开发各种数据库软件,从而达到事半功倍的效果,但是现在市面上的数据库编程工具门类众多,优良不齐,比如VB,VC,DEPHI,PB等,对此我特别针对流行的开发语言介绍相应的较为成熟的数据库编程工具. 关键字:数据库

在C++Builder中使用Delphi文件

在使用多种语言和工具编写一个应用程序时,最为困难的事情之一是创建和维护定义文件的接口.幸运的是,C++Builder把这一切都替你做好了.当在项目中加入一个.PAS文件时,C++Builder会自动创建一个.HPP文件. 在CPP文件中,可以调用Pascal的函数.对象等.这为Delphi的程序员移植全部或部分的项目提供了便捷的途径. 下面是在C++Builder中使用Delphi代码的原则: 1.在C++Builder的窗体编辑器中,不能修改或编辑Delphi的窗体.但是可以修改Delphi窗

Oracle Form Builder中使用树的心得

oracle|心得 一.树的简介Developer 6.0以上版本提供了hierarchy tree(层次树)的概念,htree控件非常方便,只需要少量的编程即可实现显示层次结构的目的.   树的特有属性中如下几个较为重要: l         多项选择(Multi-Selection):是否允许一次选中树的多个节点.如果不允许,那么              选中第二个节点时,第一个被选中的节点会取消选择. l         记录组(Record Group):指定生成树的记录组的名字.  

C#:消息队列应用程序

程序 摘要:本文概述一种用于处理若干消息队列的 Windows 服务解决方案,重点介绍 .NET 框架和 C# 应用程序. 下载 CSharpMessageService.exe 示例文件 (86 KB) 目录简介.NET 框架应用程序 应用程序结构 服务类 检测设备 安装总结参考资料 简介Microsoft 近期推出了一种用于生成集成应用程序的新平台--Microsoft .NET 框架..NET 框架允许开发人员使用任何编程语言迅速生成和部署 Web 服务和应用程序.Microsoft In

C++Builder中动态库的链接问题

动态库链接到应用程序中主要有两种方式:隐式链接和显式链接.隐式链接是常用方式. 如果应用程序和动态库是分别在不同开发平台上编制的,动态库的导入库(lib文件)可能会与应用程序的开发平台所要求的导入库格式不相容,从而在应用程序与动态库隐式链接时,出现程序链接错误:contains invalid OMF record.例如在C++Builder开发平台上链接Visual C++制作的动态库时,就会出现上述的错误.解决这一问题,可以采用两种方法:显式连接法和使用C++Builder中提供的导入库生成

在CB程序中控制Windows关机

我们在应用程序编制完成后,需要设计应用程序的包装和分发功能.在编写安装程序时,经常会遇到这样的问题:程序安装完成后需要重新启动计算机.那么在代码中如何控制Windows的关机或重新启动呢? 要实现这个功能,需要用到Windows API提供的一个ExitWindowsEx函数.我们可以通过查看C++ Builder提供的帮助文件得到这个函数的使用格式: BOOL ExitWindowsEx( UINT uFlags, // 设置关机参数 DWORD dwReserved // 系统保留字 );