; Window9X共享目录口令问题(屏保口令也是同样保存的),
口令(原始为十六进制字符)在注册表位置:
HKEY_LOCAL_MACHINE/SOFTWARE/micorsoft/windows/current_version/network/lanman/共享文件夹名/Parm1enc和Parm2enc两位置,
Parm1enc为对应的是完全共享密码,Parm2enc对应的是只读共享密码。
字符与数列(前八个数是35,9A,4D,A6,53,A9,D4,6A)作异或运算即得密码的二进制ASCII码,转换后可得到密码。
var reg : TRegistry; name : String; //s是在网上邻居里的文件夹名
begin
name := 'DirName';//建立一个只读,无密码共享目录
reg := TRegistry.Create;
reg.RootKey := HKEY_LOCAL_MACHINE;
reg.OpenKey('Software/Microsoft/Windows/CurrentVersion/Network/LanMan/'+name,true );
reg.WriteInteger( 'Flags', 401 ) //权限:401代表为访问,258为完全访问,259为密码访问
reg.WriteInteger( 'Parm1enc', 0 ) //参数2,放置完全访问密码,已加密
reg.WriteInteger( 'Parm2enc', 0 ) //参数2,放置只读访问密码,已加密
reg.WriteString( 'Path', 'C:/MYDIR' ) //放置要共享的目录的绝对路径
reg.WriteString( 'Remark', '' )
reg.WriteInteger( 'Type', 0 )
end;