好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

WinForm通过操作注册表实现限制软件使用次数的方法

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

1.创建注册表文件:

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

?

REGEDIT4

[HKEY_CURRENT_USER /Software/MyRegDataApp ]

"UseTime" = "10"

保存为[RegData.reg]

2.创建winform项目

引用名称空间

?

using Microsoft.Win32 ;

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

?

RegistryKey RootKey,RegKey;

//项名为:HKEY_CURRENT_USER/Software

RootKey = Registry.CurrentUser.OpenSubKey ( "Software" , true );

//打开子项:HKEY_CURRENT_USER/Software/MyRegDataApp

if ((RegKey = RootKey.OpenSubKey ( "MyRegDataApp" , true )) == null )

{

      RootKey.CreateSubKey( "MyRegDataApp" ); //不存在,则创建子项

      RegKey = RootKey.OpenSubKey ( "MyRegDataApp" , true );

      RegKey.SetValue ( "UseTime" ,( object )9);  //创建键值,存储可使用次数

      MessageBox.Show ( "您可以免费使用本软件10次!" , "感谢您首次使用" );

     return ;

}

try

{

     object usetime = RegKey.GetValue ( "UseTime" ); //读取键值,可使用次数

      MessageBox.Show ( "你还可以使用本软件 :" + usetime.ToString ()+ "次!" , "确认" ,MessageBoxButtons.OK ,MessageBoxIcon.Information );

     int newtime = Int32.Parse (usetime.ToString()) -1;

     if (newtime<0)

     {

       if (MessageBox.Show ( "继续使用,请购买本软件!" , "提示" ,MessageBoxButtons.OK ,MessageBoxIcon.Information )== DialogResult.OK )

       {

          Application.Exit ();

        }

      }

     else

     {

        RegKey.SetValue ( "UseTime" ,( object )newtime); //更新键值,可使用次数减1

      }

}

catch

{

      RegKey.SetValue ( "UseTime" ,( object )10);  //创建键值,存储可使用次数

      MessageBox.Show ( "您可以免费使用本软件10次!" , "感谢您首次使用" );

     return ;

}

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

dy("nrwz");

查看更多关于WinForm通过操作注册表实现限制软件使用次数的方法的详细内容...

  阅读:56次