0 Пользователей и 1 Гость просматривают эту тему.
#!/usr/bin/perl$version="RegEdit v1.0 for WinNT/W2k/XP";use Win32::Registry;use Win32::NetAdmin;$user=Win32::LoginName;@a=@ARGV;sub help{ die <$versionUsage: regedit.pl Commands: -doc Move documents to the $profile -url Show last 25 typed urls -show Show statistics for user \'$user\' -env Change environment (set to Path) -start Set startup.cmdHELP}$now=localtime;$out_file="$user.dat";$profile = "E:\\\\home\\\\%USERNAME%";@sysdir = ("Desktop", "Favorites", "Sendto");@path = ("f:\\\\util", "f:\\\\util\\\\arc", "f:\\\\util\\\\control", "f:\\\\fidonet\\\\control");@env = ("Path", "PATHEXT", "windir");# $lm_run = HKLM Run$::HKEY_LOCAL_MACHINE->Open("SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run",$lm_run);# $cu_run = HKCU Run$::HKEY_CURRENT_USER->Open("SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run",$cu_run);# $cu_usf = HKCU User Shell Folders$::HKEY_CURRENT_USER->Open("SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders",$cu_usf);# $lm_env = HKLM Env$::HKEY_LOCAL_MACHINE->Open("SYSTEM\\\\ControlSet001\\\\Control\\\\Session Manager\\\\Environment",$lm_env);sub show_data{ print "$user statistics:\\n\\n"; foreach $dir (@sysdir) { $cu_usf->QueryValueEx("$dir", REG_EXPAND_SZ, $path); print "$dir located in $path\\n\\n"; } foreach $env (@env) { $lm_env->QueryValueEx("$env", REG_EXPAND_SZ, $value); print "$env are $value\\n\\n"; }}sub set_startup{ $lm_run->SetValueEx("home", 0, REG_EXPAND_SZ, "f:\\\\util\\\\control\\\\home.cmd"); $cu_run->SetValueEx("startup", 0, REG_EXPAND_SZ, "f:\\\\util\\\\control\\\\startup.cmd");}#####################################################sub doc_sec{ foreach $dir (@sysdir) { $cu_usf->SetValueEx("$dir", 0, REG_EXPAND_SZ, "$profile\\\\system\\\\$dir"); } $cu_usf->SetValueEx("Personal", 0, REG_EXPAND_SZ, "$profile\\\\My Documents"); $cu_usf->QueryValueEx("Personal", REG_EXPAND_SZ, $path); $cu_usf->SetValueEx("My Pictures", 0, REG_EXPAND_SZ, "$path\\\\My Pictures");}####################################################sub change_env{ $lm_env->QueryValueEx("Path", REG_EXPAND_SZ, $oldpath); foreach $path (@path) { $oldpath = $path.";".$oldpath; $lm_env->SetValueEx("Path", 0, REG_EXPAND_SZ, "$oldpath"); } $lm_env->QueryValueEx("PATHEXT", REG_EXPAND_SZ, $oldext); $ext = ".PL;".$oldext; $lm_env->SetValueEx("PATHEXT", 0, REG_EXPAND_SZ, "$ext");}sub typ_url{ $::HKEY_CURRENT_USER->Open("SOFTWARE\\\\Microsoft\\\\Internet Explorer\\\\TypedURLs",$cu_tu); open(OUT,">$out_file"); print OUT "$version\\n\\n"; print OUT "User: $user\\n\\n"; print OUT "Date: $now\\n\\n"; print "$version\\n\\n"; print "User: $user\\n\\n"; print "Date: $now\\n\\n"; for ($i=1; $i<=25; $i++) { $cu_tu->QueryValueEx("url"."$i", REG_SZ, $url); print OUT "$url\\n"; print "$url\\n"; } close(OUT);}#show_data();if( $a[0] eq "-doc" ){ doc_sec();}elsif( $a[0] eq "-url" ){ typ_url();}elsif( $a[0] eq "-show" ){ show_data();}elsif( $a[0] eq "-env" ){ change_env();}elsif( $a[0] eq "-start" ){ set_startup();}else{ help();}$lm_run->Close();$lm_env->Close();$cu_usf->Close();$cu_run->Close();
А shortcut на папку чем не устраивает?
Свойства папки "Мои документы" той что на раб. столе лежит и там меняй ее размещение как угодно
Я вот поменял путь к My Documents, и она перестала у меня в диалогах показываться
Для 100 пользователей - запихни в скрипт , который при логине запускается смену значений registry
"Log on - Log off"...неужели я на такое ламо похож?
Она в системных диалогах показывается на первом уровне иерархии?