我在InstallShield Express中,制作安装程序,在Dialog Boxes中的User Information中要求用户输入序列号,但是这好象只是形式,安装程序根本不会去检测它.不知道怎么处理?

解决方案 »

  1.   

    要自己寫個dll加進去驗證!!具體看幫助, 有個例子!
      

  2.   

    能不能详细点,我的InstallShield Express缺少帮助!
    谢谢!
      

  3.   

    你的版本號是多少?? 我在 Express4中做過, 現在我已經在用5了!你想問的是那個??幫助的例子是個VC做的Dll
      

  4.   

    Express4,
    找不到更高版本,只能用老版本!
      

  5.   

    我给你一个说明书,你自己看看。如何?
    你用短信告数我E-Mail
      

  6.   

    taiylr:
    网上的那份教程在哪儿?
    谢谢!
      

  7.   

    [email protected]
    我也要一份说明
      

  8.   

    能不能把网址贴出来?我也需要,谢谢![email protected]
      

  9.   

    不会把,那个帮助文件,网上遍地都是,去书记夏栽的网站找找。
    我发不出去,3m多。
    把它里面的代码贴出来:
      在该对话框中,只有当用户全部输入所有内容后,对话框的[Next]才能被使用。但这里的序列号是不起作用的,也就是说,不管用户键入什么样的序列号,安装过程都会正常进行。为此,我们在DialogShowSdRegisterUserEx函数代码中添加下列代码,使序列号有效,即键入的序列号若等于某个值(这里为DYH425-1234567),才能进行下一步的安装。  function DialogShowSdRegisterUserEx()
       NUMBER nResult;
       STRING szTitle, szMsg;
       begin
        svName = "";
        svCompany = "";
        szTitle = "";
        szMsg = "";
        Dlg_Register:
        nResult = SdRegisterUserEx( szTitle, szMsg, svName, svCompany, svSerial );
        if (nResult = NEXT) then
         if (StrCompare( svSerial , "DYH425-1234567") != 0) then
          MessageBox ( "输入的序列号 "+svSerial+" 不正确!" , WARNING );
          goto Dlg_Register;
         endif;
        endif;
       return nResult;
      end;  需要说明的是,一旦安装项目的某些内容(除脚本源程序外)被改动,就必须在编译和运行安装程序前,进行媒介的创建操作,这样才能保证修改有效。