我做了一个屏幕保护程序,可是在windows 98下安装后,点击"桌面属性->屏幕保护程序->设置密码"按钮没有用,怎么实现呢?

解决方案 »

  1.   

    WINDOWS启动运行SCREENSAVE的秘密在哪里?它就在于参数。WINDOWS可让SCREENSAVE带三种
    不同的参数运行:/S、/C、/P。其中/S参数通知SCR运行于屏幕保护状态;/C(在
    WIN98则以/C:XXXX参数)和/P参数分别运行于设置与预览方式。打开“显示器属
    性”,选中“屏幕保护程序”页面后,只要已选中一个SCR,Windows95都会不断
    以SCRFileName/PXXXXX启动该屏保程序,XXXXX就是页面上计算机“显示器”窗体
    的句柄(处在/P参数的运行,可由这个窗体句柄取得DC,这里就不再叙述了)。
    如果选中[设置(T)...]或[预览(V)]按钮,Windows会先中断已运行的SCR(如果有
    以/P参数运行的SCR的话),再以/C或/P参数,启动选中的SCR。如果选中了一个
    SCR,按右键,出现快捷菜单,其中有“测试(E)”、“配置(O)”、?安装(I)”等
    项:它们分别以/C参数、无参数、/P参数运行SCR。需注意的是,这里的“配置”
    就是“设置”,奇怪的是,却没有任何参数。----在DELPHI中,ParamCount函数可取得命令行参数个数,ParamStr(Index:Integer)
    则返回命令行中相应参数字符串,其中ParamStr(0)为程序名,ParamStr(1)中的存
    放有WINDOWS启动SCR的第一个参数。了解这些可以帮助我们根据不同的参数设置运
    行时的主窗体。假定某SCR有二个窗体,与预览、设置二种运行方式相对应,其窗体
    名分别为FormA,FormB,则编写Project程序如下:
    if (Paramcount >0) then
    begin
    para1 := Copy(UpperCase(ParamStr(1)),1,2);
    if para1=`/S` then 
    begin
      //预览代碼
    end;
    if para1=`/C` then 
    begin
      //设置代碼
    end;
    end else begin 
      //设置代碼
    end;