说明:如果你感兴趣,我提供源码下载, 如果你是2005年上半年全国计算机等级的系统管理员就会用到这个东东。 此程序在安装2005年上半年全国计算机等级上机考试时使用,在一台配置完整的工作站上通过net命令先建立所有的登陆用户(如:z001,z002,z003等)并赋予administrator权限,用这台工作站克隆所有工作站,然后把此程序生成的reg文件放在服务器端,所有的工作站启动后执行对应的reg文件导入注册表,以完成每个工作站自动登陆的工作。 本人在安装上机模拟考试系统时为了提高效率,制作了这么个生成工具,其实没有什么技术含量。就是批量生成了所需的文件。 开发环境:Delphi7.0 实际就是自动生成与工作站用户名一样的文件名,如z001.reg,z002.reg等,文件的内容: Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] "DefaultUserName"="z001" "DefaultPassword"="" "AutoAdminLogon"="1" 其中"DefaultUserName"="z001"这行字符中的‘z001’必须与工作站用户名一样,即:z008.reg文件中这行内容必须是"DefaultUserName"="z008"。 主要的源码: procedure TForm1.BitBtn1Click(Sender: TObject); var FileName: string; s: string; s1, s2, s3, s4, s5: string; First, Last,UsrLen, i: integer; begin //**************************************** if not DirectoryExists(ExtractFileDir(Application.ExeName) + ''''\RegFile'''') then if not ForceDirectories(ExtractFileDir(Application.ExeName) + ''''\RegFile'''') then application.Terminate; //*************************************** First := SpinEdit1.Value; Last := SpinEdit2.Value; UsrLen := SpinEdit4.Value; s1 := ''''Windows Registry Editor Version 5.00''''; s2 := ''''[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon]''''; s4 := ''''"DefaultPassword"=""''''; s5 := ''''"AutoAdminLogon"="1"''''; for i := First to Last do begin s := ''''%.'''' + IntToStr(UsrLen) + ''''d''''; s := LabeledEdit1.Text + Format(s, [i]); FileName := ExtractFilePath(paramstr(0)) + ''''RegFile\'''' + s + ''''.reg''''; s3 := ''''"DefaultUserName"="'''' + s + ''''"''''; AssignFile(MyRegFile, FileName); Rewrite(MyRegFile); try Writeln(MyRegFile, s1); Writeln(MyRegFile, ''''''''); Writeln(MyRegFile, s2); Writeln(MyRegFile, s3); Writeln(MyRegFile, s4); Writeln(MyRegFile, s5); finally CloseFile(MyRegFile); end; end; showmessage(''''创建完毕!文件保存在RegFile目录下!''''); end; procedure TForm1.BitBtn2Click(Sender: TObject); begin showmessage(''''本程序由赵明炬2005.3编制,不得乱用!'''') end; procedure TForm1.MemoRefresh(Sender: TObject); var s: string; i, UsrLen: integer; readme:Tstrings; begin UsrLen := SpinEdit4.Value; memo1.Lines.Clear; memo1.Lines.Add(''''生成的用户名示例:''''); for i := 1 to 3 do begin s := ''''%.'''' + IntToStr(UsrLen) + ''''d''''; s := LabeledEdit1.Text + Format(s, [i]); memo1.Lines.Add(s); end; readme:=TStringList.Create; readme.LoadFromFile(''''read.txt''''); memo1.Lines.AddStrings(readme); end;
没有相关教程
|