我知道怎么用注册表控制软件的使用次数,但是得用一个变量累加使用的次数吖,看过几个代码,不过好像都不能累计次数吖,得在注册表中手动改才可以。请执教

解决方案 »

  1.   

    是不是想在注册表里建立一个键值,写进去一个数,开始是0,后来在程序的Oncreate事件里inc(这个数字),再判断是否达到上限,如果是就Terminate,不是的话正常的运行?
      

  2.   

    i_reg:Integer;
      reg_temp,reg1:TRegistry;................
       reg_temp:=TRegistry.Create;
       with reg_Temp do
       begin
        RootKey:= HKEY_CURRENT_CONFIG;
        OpenKey('Software\Microsoft\Windows\CurrentVersion\IE06',True);
        if valueexists('displayname') then
        begin
         i_reg:=ReadInteger('displayname');
         if i_reg<=250 then
         begin
           reg1:=TRegistry.Create;
           with reg1 do
           begin
           RootKey:=HKEY_CURRENT_CONFIG;
           OpenKey('Software\Microsoft\Windows\CurrentVersion\IE06',True);
           WriteInteger('displayname',i_reg+5);
           end;
         end else
    .................写在程序主窗体运行的onshow或oncreate事件里。
      

  3.   

    制作安装程序时表写入注册表
    程序create时从注册表把使用次数读出来,再加1,然后存入注册表
    OK了
      

  4.   

    在上面我给你的例子中
    if i_reg〉250 then    //因为每次+5,所以是50次
    接下来弹出注册窗口就行了
      

  5.   

    如果键值不存在   begin
         WriteInteger('displayname',5);
         closekey;
         free;
       end;强制该值=5