查看: 2313|回复: 0

[.NET开发] WinForm通过操作注册表实现限制软件使用次数的方法

发表于 2018-2-9 08:00:00

本文实例讲述了WinForm通过操作注册表实现限制软件使用次数的方法。分享给大家供大家参考,具体如下:

1.创建注册表文件:

打开记事本,输入一些内容:

  1. REGEDIT4
  2. [HKEY_CURRENT_USER/Software/MyRegDataApp]
  3. "UseTime"="10"
复制代码

保存为“RegData.reg”

2.创建winform项目

引用名称空间

  1. using Microsoft.Win32 ;
复制代码

在Form中激活load事件,并添加代码

  1. RegistryKey RootKey,RegKey;
  2. //项名为:HKEY_CURRENT_USER/Software
  3. RootKey = Registry.CurrentUser.OpenSubKey ("Software",true);
  4. //打开子项:HKEY_CURRENT_USER/Software/MyRegDataApp
  5. if ((RegKey = RootKey.OpenSubKey ("MyRegDataApp",true)) == null)
  6. {
  7. RootKey.CreateSubKey("MyRegDataApp");//不存在,则创建子项
  8. RegKey = RootKey.OpenSubKey ("MyRegDataApp",true);
  9. RegKey.SetValue ("UseTime",(object)9); //创建键值,存储可使用次数
  10. MessageBox.Show ("您可以免费使用本软件10次!","感谢您首次使用");
  11. return;
  12. }
  13. try
  14. {
  15. object usetime = RegKey.GetValue ("UseTime");//读取键值,可使用次数
  16. MessageBox.Show ("你还可以使用本软件 :"+ usetime.ToString ()+ "次!","确认",MessageBoxButtons.OK ,MessageBoxIcon.Information );
  17. int newtime = Int32.Parse (usetime.ToString()) -1;
  18. if (newtime<0)
  19. {
  20. if (MessageBox.Show ("继续使用,请购买本软件!","提示",MessageBoxButtons.OK ,MessageBoxIcon.Information )== DialogResult.OK )
  21. {
  22. Application.Exit ();
  23. }
  24. }
  25. else
  26. {
  27. RegKey.SetValue ("UseTime",(object)newtime);//更新键值,可使用次数减1
  28. }
  29. }
  30. catch
  31. {
  32. RegKey.SetValue ("UseTime",(object)10); //创建键值,存储可使用次数
  33. MessageBox.Show ("您可以免费使用本软件10次!","感谢您首次使用");
  34. return;
  35. }
复制代码

更多关于C#相关内容感兴趣的读者可查看本站专题:《WinForm控件用法总结》、《C#窗体操作技巧汇总》、《C#数据结构与算法教程》、《C#常见控件用法教程》、《C#面向对象程序设计入门教程》及《C#程序设计之线程使用技巧总结》

希望本文所述对大家C#程序设计有所帮助。

您可能感兴趣的文章:

  • C#操作注册表的方法
  • C# 注册表 操作实现代码
  • C#读写注册表的思路及代码
  • c#读写注册表示例分享
  • 使用C#在注册表中保存信息的例子
  • C# WinForm中禁止改变窗口大小的方法
  • C#通过windows注册表获取软件清单的方法
  • C#实现读取注册表监控当前操作系统已安装软件变化的方法
  • C#操作注册表的方法详解
  • C#设置软件开机自动运行的方法(修改注册表)
  • C#设置自定义文件图标实现双击启动(修改注册表)


回复

使用道具 举报