"); $_SESSION["pageaide"]="Gestion_des_clients_windows#Description_du_processus_de_configuration_du_registre_Windows"; require "include.inc.php"; echo "

Ajout d'une clé

"; //connexion a la base de donnees connexion(); //recuperation de l'action a effectuer $ajout=$_POST['ajout']; if (!$ajout) { $ajout=$_GET['ajout']; } //cas 2: exporter les cles switch ($ajout) { //defaut: preparation de l'ajout d'une cle unique //cas 1 : ajout d'une cle unique : insertion des donnees dans la base //cas 2 : exporter des cles : permet de selectionner les cles a exporter ancienne methode (obsolete) //cas 4 : resultat de l'exportation dans une textearea (obsolete) //cas 5 : ajout en nombre de cles (obsolete) //cas 6 : analyse du vrac de l'ajout en nombre (obsolete) //cas 7 : confirmation de l'ajout des cles (obsolete) //cas 8 : importation d'un .reg //cas 9 : premiere analyse du point reg //cas 2 :exporter des cles : permet de selectionner les cles a exporter ancienne methode (obsolete) case "2": //$n : utilise par le javascript //$nombre1 : utise pour recuperer le nombre de resultats de la recherche echo gettext("Exporter des clés"); connexion(); $query="Select Intitule,cleID,valeur,genre,OS,chemin,categorie,sscat from corresp order by cleID desc"; $resultat = mysql_query($query); $nombre1 = mysql_num_rows($resultat); //pour selectionner tout d'un coup necessite de connaitre le nombre de cles existantes echo "".gettext("Liste des clés enregistrées")."

"; echo "
"; echo ""; $row = mysql_fetch_array($resultat); $n=1; echo""; //$nombre=$row[1]+1; while ($row = mysql_fetch_array($resultat)) { $n++; echo""; } $n++; echo"
\"Aide\"
".gettext("Intitulé")."
OS
".gettext("Valeur (defaut)")."
".gettext("Exporter")."
$row[6]$row[7]$row[0]
 $row[4]
$row[2]
\"Aide\"
$row[6]$row[7]$row[0]
 $row[4]
$row[2]


"; break; //cas 4 :resultat de l'exportation dans une textearea (obsolete) case "4": echo gettext("Resultat de l'exportation")."
"; $nb=$_POST['nombre1']; $nb++; echo""; break; //ajout en nombre de cles (obsolete) case "5": echo gettext("Les champs Intitulés, valeur, antidote, genre, OS , type (config ou restrict) , chemin (HKEY_CURRENT_USER\...... ) , commentaires, Catégorie ,Sous-Catégorie doivent être séparés par -- et chaque clé par ;&;.
Par exemple:
Page de démarrage d'Internet Explorer--www.ac-creteil.fr--www.ac-creteil.fr--REG_SZ--TOUS--config--HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Start Page--Mon commentaire--Categorie--Souscatégorie;&;"); echo "
"; echo "
"; break; //analyse du vrac de l'ajout en nombre (obsolete) case "6": $brut1=$_POST['vrac']; echo gettext("Première analyse des clés à importer")."
"; $brutout= enleveantislash($brut1); $result=preg_split("/;&;/",$brutout); $nombre=count($result); $nombre1=$nombre-1; echo "
"; connexion(); echo ""; for ($j=0; $j < $nombre; $j++) { $export[$j]=enlevedoublebarre($result[$j]); $cle=preg_split("/--/",$export[$j]); if ($cle[6]) { $cletrim=ajoutedoublebarre(($cle[6])); $query="SELECT chemin FROM corresp WHERE chemin='$cletrim';"; $resultat = mysql_query($query); $row = mysql_fetch_row($resultat); if ($row[0]){ $exist++; } else { $nouv++; echo ""; $cle[6]= enlevedoublebarre($cle[6]); echo ""; for ($i=0; $i < 8; $i++) { echo ""; } } } } echo"
New".$cle[8]."".$cle[9]."".$cle[$i]."
"; echo""; if ($nouv) { echo gettext("Attention, les clés déjà existantes sont ignorées !!")." ( $exist )
"; echo "
"; if ($testniveau<3){ echo "";} } else { echo gettext("Pas de clés nouvelles !!")."
"; } break; //confirmation de l'ajout des cles (obsolete) case "7": $test=$_POST['test']; echo ""; $nb=$_POST['nombre']; for ($j=0; $j < $nb; $j++) { $cle[$j]=$_POST['test'.$j]; if ($cle[$j]) { $cleok=preg_split("/--/",$cle[$j]); connexion(); if (($cleok[5]=="config") or (!$cleok[2])) { $cleok[2]=$cleok[1]; $cleok[5]="config"; } else {$cleok[5]="restrict";} $cleok[8]=strtolower($cleok[8]); $cleok[9]=strtolower($cleok[9]); $cleok[9]=preg_replace("/([\r\n])/", "", $cleok[9]); $cleok[8]=trim($cleok[8]); $cleok[9]=trim($cleok[9]); $cletrim=ajoutedoublebarre(($cle[6])); $query="SELECT cleID FROM corresp WHERE '$cletrim'=chemin;"; $resultat = mysql_query($query); $row=mysql_fetch_array($resultat); if (!$row[0]) { //$insert = mysql_query($query); $query="INSERT INTO corresp (Intitule,valeur,antidote,genre,OS,type,chemin,comment,categorie,sscat) VALUES ('$cleok[0]','$cleok[1]','$cleok[2]','$cleok[3]','$cleok[4]','$cleok[5]','$cleok[6]','$cleok[7]','$cleok[8]','$cleok[9]');"; $insert = mysql_query($query); //echo ""; if ($cleok[5]=="restrict") { $query="SELECT cleID FROM corresp WHERE '$cleok[6]'=chemin;"; $resultat = mysql_query($query); $row=mysql_fetch_array($resultat); $query2="INSERT INTO modele( `etat`, `cle`, `mod` ) VALUES ('0','$row[0]','norestrict');"; $insert2 = mysql_query($query2); } //insertion dans le modele norestrict echo ""; for ($i=0; $i < 9; $i++) { $cleok[$i]=enlevedoublebarre($cleok[$i]); $cleok[$i]=enleveantislash($cleok[$i]); echo ""; } echo ""; } $testclecree++; } else { $testcleignoree++; } } echo "
".gettext("Etat")."".gettext("Intitule")."".gettext("Valeur")."".gettext("Antidote")."".gettext("Genre")."".gettext("OS")."".gettext("Type")."".gettext("Chemin")."".gettext("Commentaires")."".gettext("Categorie")."
$query Fait
".gettext("Fait")."$cleok[$i] 
"; if ($testclecree) { echo "
$testclecree clé ont été créées
"; } if ($testniveau<3) { echo"".gettext("Commandes prises en compte !")."
"; } break; //ajout d'une cle unique : insertion des donnees dans la base case "1": echo gettext("Ajout d'une clé")."
"; connexion(); $intitule=$_POST['Intitule']; $valeur=$_POST['Valeur']; $genre=$_POST['genre']; $OSS=$_POST['OS']; $chemin=$_POST['chemin']; $comment=$_POST['comment']; $type=$_POST['type']; $anti=$_POST['antidote']; $categorie=$_POST['newcategorie']; if (!$categorie) {$categorie=$_POST['categorie'];} $sscat=$_POST['sscat']; $genre=$_POST['genre']; $OS=""; for ($i=0; $i";} else { //cle de configuration if ($type=="config") {$antidote=$valeur;} $categorie=strtolower($categorie); $sscat=strtolower($sscat); //insertion dans la table corresp $query="INSERT INTO corresp (Intitule,valeur,genre,OS,chemin,comment,type,antidote,categorie,sscat) VALUES ('$intitule','$valeur','$genre','$OS','$chemin','$comment','$type','$anti','$categorie','$sscat');"; $insert = mysql_query($query); echo "".gettext("Commandes prises en compte !"); echo gettext("Insertion effectuée"); if ($type="restrict") { //insertion dans le modele generique norestrict $query="SELECT cleID FROM corresp WHERE '$chemin'=chemin;"; $resultat = mysql_query($query); $row=mysql_fetch_array($resultat); $query2="INSERT INTO modele( `etat`, `cle`, `mod` ) VALUES ('0','$row[0]','norestrict');"; $insert2 = mysql_query($query2); } } echo"".gettext("Commandes prises en compte !")."
"; break; //importation d'un .reg case "8": echo gettext("Vous pouvez coller ici le contenu d'un .reg, si vous mettez un # (avant le chemin)
Il sera pris en compte pour marquer le début de l'intitulé de la clé
Par exemple
Windows Registry Editor Version 5.00
#Page de recherche
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main]
\"Search Page\"=\"http://www.microsoft.com/isapi/redir.dll?prd=ie&ar=iesearch\""); echo "
"; echo "
"; break; //premiere analyse du point reg case "9": $brut=$_POST['vrac']; $retour=$_POST['retour']; echo gettext("Première analyse du .reg à importer")."
"; $brutout= enleveantislash($brut); //echo "Detection de l'OS"; $brut=$brutout; $list= preg_split ("/\r\n/", $brutout, 15); //echo $list[0]; $OS=""; if ($list[0] == "Windows Registry Editor Version 5.00") { $OS="XP";} if ($list[0] == "REGEDIT4") { $OS="98"; } for ($i=1;$i<15;$i++) { if (Ord($list[$i]) == 35) { $Intitule = substr($list[$i],1); break; } } for ($i=1;$i<15;$i++) { if (Ord($list[$i]) == 91) { $branche = $list[$i]; $j=$i+1; next;}} $branche = enlevedoublebarre($branche); list($cle,$valeur)=preg_split("/=/", $list[$j], 2); $cle = enleveantislash($cle); $cle = enlevequotes($cle); $branche= enlevecrochets($branche); $branchefin= $branche."\\".$cle; $query="Select chemin from corresp where chemin='$branchefin'"; $resultat=mysql_query($query); //la requete ne retourne pas des resultats : on peut creer la cle $num=mysql_num_rows($resultat); if (!$num) { echo ""; echo ""; //analyse de la cle en fonction de la nature de la valeur //type reg_sz if (Ord($valeur) == 34) { $valeur = enlevequotes($valeur); $genre="REG_SZ"; $type="config"; } //type reg_dword if (strpos($valeur,"word:")== 1 ) { $genre="REG_DWORD"; $valeur= substr($valeur,6); $valeur=DecHex($valeur); $type="restrict"; } if (strpos($valeur,"ex:")== 1 ) { $genre="REG_DWORD"; $valeur= substr($valeur,4); $valeur=hexdec($valeur); $type="restrict"; } //definition de la categorie (affichage des categories existantes) echo ""; echo ""; echo ""; echo "
".gettext("Intitulé de la clé ? A compléter si nécéssaire:")."
".gettext("OS détecté")." :
".gettext("Catégorie")."
".gettext("Sous-Categorie")."
".gettext("Genre de la clé ?")."
".gettext("Valeur de la clé ( à mettre en décimal)")."
".gettext("Antidote")."Valide si clé de restriction: SUPPR pour supprimer la clé
".gettext("Type de la clé : restriction ou configuration ?").""; echo ""; echo "
".gettext("Commentaires ?")."
"; echo "

"; echo ""; echo "
"; } else { //la cle existe deja echo gettext("Cette clé existe déjà"); } break; //preparation de l'ajout d'une cle unique default: echo gettext("Complètez attentivement les champs suivants"); echo "
"; //affichage des autres infos echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo "
".gettext("Catégorie")."".gettext("Nouvelle:"); echo " ".gettext("ou")."
".gettext("Intitulé de la clé")."
".gettext("Valeur par défaut")."
".gettext("Antidote"); echo "Valide si clé de restriction: SUPPR pour supprimer la clé
".gettext("Genre de la clé")."
".gettext("OS concerné")."
".gettext("Chemin")."
".gettext("Commentaires eventuels")."
".gettext("Type de la clé")."
"; echo ""; echo "


"; echo gettext("Attention : Une clé de restriction sera automatiquement ajoutée au groupe de clé no restrict")."
"; } mysql_close(); retour(); include("pdp.inc.php"); ?>