Автор Тема: Работа с реестром  (Прочитано 7010 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Radius

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 1
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Работа с реестром
« : 26 Декабря 2003, 22:25:00 »
Хотелось бы узнать, можно вообще работать с виндовым реестром через PHP?

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Работа с реестром
« Ответ #1 : 27 Декабря 2003, 00:34:38 »
какие только эротические фантазии в голову людям не приходят...

Ты с реестром так, без РНР-то умеешь работать? Кроме как в красивых окошечках?

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
Работа с реестром
« Ответ #2 : 27 Декабря 2003, 10:02:23 »
2RomicChef
Согласен.
Интересно, а зачем вообще может понадобиться работа с виндовым реестром из скрипта?

2Radius
Наверное, нет.
LJ: Backslashed life (rss)

Оффлайн USE

  • Любитель
  • Ветеран
  • *****
  • Сообщений: 720
  • +0/-0
  • 2
    • Просмотр профиля
Работа с реестром
« Ответ #3 : 27 Декабря 2003, 12:45:20 »
Radius
наверняка еще и на стороне клиента? ;-)
Не ходите, дети, без «Мозиллы» дальше localhost!

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
Работа с реестром
« Ответ #4 : 27 Декабря 2003, 13:48:15 »
Цитировать
USE:
наверняка еще и на стороне клиента? ;-)

:D

[p]COM[/p]?
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Login_OFF

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 2
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Работа с реестром
« Ответ #5 : 01 Апреля 2006, 12:47:37 »
а серьёзно ? есть такая возможность ? без создания бат файлов и т.д.
очень нада брать инфу с реестра для работы с вингейтовской базой пользователей...

Оффлайн reLax[0x00]

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 68
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.microcat.ru
Работа с реестром
« Ответ #6 : 01 Апреля 2006, 14:05:11 »
нет ничего невозможного с PHP - функция system(); -  reg.exe - работа с реестром из cmd попробуй поюзать

Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.

C:\\Documents and Settings\\reLax>reg

Программа редактирования системного реестра из командной строки, версия 3.0
(C) Корпорация Майкрософт, 1981-2001. Все права защищены


REG <Операция> [Список параметров]

  <Операция> ==  [ QUERY   | ADD    | DELETE  | COPY    |
                   SAVE    | LOAD   | UNLOAD  | RESTORE |
                   COMPARE | EXPORT | IMPORT ]

Код возврата: (за исключением REG COMPARE)

  0 - Успешно
  1 - С ошибкой

Для получения справки по определенной операции введите:

  REG /?

Примеры:

  REG QUERY /?
  REG ADD /?
  REG DELETE /?
  REG COPY /?
  REG SAVE /?
  REG RESTORE /?
  REG LOAD /?
  REG UNLOAD /?
  REG COMPARE /?
  REG EXPORT /?
  REG IMPORT /?

C:\\Documents and Settings\\reLax>
« Последнее редактирование: 01 Апреля 2006, 14:14:22 от reLax[0x00] »

Оффлайн Login_OFF

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 2
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Работа с реестром
« Ответ #7 : 01 Апреля 2006, 14:16:21 »
Спасибо, буду разбиратся :)

Оффлайн reLax[0x00]

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 68
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.microcat.ru
Работа с реестром
« Ответ #8 : 01 Апреля 2006, 14:28:57 »
могу примерный код подсказать даже :) я такое уже делал-правда под *nix - смотри сам может пригодится-здесь simple-скрипт типа "GUI" типа для $BASH:



<?
require_once 
$_SERVER[\'DOCUMENT_ROOT\']."/functions.php";
$tools = array(\'Whois\',\'Ping\',\'Traceroute\');
function showbox () {
global $form, $error, $submit;
if (isset ($_POST[\'submit\'])) {
	
$error = checkform(key($_POST[\'submit\']));
	

	
if (empty ($error[0])) {
        showform();        
	
    sendinfo ();
        
         
} else {
	
	
echo "<script language=\\"JavaScript\\">alert (\'В процессе обработки вашего запроса произошли ошибки:\\\\n\\\\n".preg_replace (\'/[\\r\\n]+/s\',\'\\\\n\', $error[0])."\');</script>";
	
	
showform();
	
	
}
} else {
	
    showform();
}
}

function showform () {
global $form, $error, $submit, $tools;
if (!isset ($GLOBALS[\'error\'][0])) {
$val[0] = $val[1] = $val[2] = $_SERVER[\'REMOTE_ADDR\'];
} else {
$val[0] = $GLOBALS[\'form\'][\'Whois\'];
$val[1] = $GLOBALS[\'form\'][\'Ping\'];
$val[2] = $GLOBALS[\'form\'][\'Traceroute\'];
}
foreach ($tools as $key=>$value) {
$class[$key] = (isset($GLOBALS[\'error\'][$key+1]))? "class=\\"error\\"":"class=\\"normal\\"";
}

$html.=<<<__EAX__
<center>
<form action="{$_SERVER[\'REQUEST_URI\']}" method="POST">
__EAX__;

$root = end ($tools);
foreach ($tools as $key=>$value) {
$html.=<<<__MID__
<fieldset class="field"><legend align="left">$value</legend>
<table cellpadding="0" cellspacing="5" border="0" width="200">
<tr><td valign="middle" align="center">
<input $class[$key] type="Text" name="form[$value]" maxlength="30" value="$val[$key]" size="30">
</td></tr><tr><td valign="middle" align="center">
<input type="submit" class="baton" name="submit[$value]" value="{$value} !" style="width:100px;">
</td></tr></table>
</fieldset>
__MID__;

$html.= ($root!=$value)?\'
\':\'\';
}


$html.= "</form></center>";

echo table($html);
}

function checkform ($key) {
global $form, $error, $submit,$tools;

$error[0]=NULL;

if (isset ($_POST[\'submit\'][$key])):
if (!preg_match (\'%(^[a-z0-9])[\\w\\.\\-]+$%i\', $_POST[\'form\'][$key])) {
$error[0] = "* Введите правильно IP-адрес или домен в поле ".$key;
foreach ($tools as $arrkey => $arrval) {
$error[$arrkey+1] = ($arrval == $key)?1:NULL; }
}
endif;

return $error;
}

function sendinfo () {
global $form, $error, $submit;
spacer ();


echo "<table cellpadding=\\"0\\" cellspacing=\\"0\\" border=\\"0\\" align=\\"center\\"><tr><td class=\\"red\\">";
switch ($_POST[\'submit\']) {

case (isset ($_POST[\'submit\'][\'Whois\'])):
echo "Результат запроса к WHOIS серверам домена ".$GLOBALS[\'form\'][\'Whois\'].":";
echo "<pre class=\\"lex\\">";
ob_end_flush();
$command = "whois ".$GLOBALS[\'form\'][\'Whois\'];
system (escapeshellcmd($command));
flush();
ob_flush();
break;

case (isset ($_POST[\'submit\'][\'Ping\'])):
$command = "ping -c 5 ".$GLOBALS[\'form\'][\'Ping\'];
echo "Результат PING статистики между ".$_SERVER[\'HTTP_HOST\']." и ".$GLOBALS[\'form\'][\'Ping\'].":";
echo "<pre class=\\"lex\\">";
ob_end_flush();
system (escapeshellcmd($command));

flush();
ob_flush();
break;

case (isset ($_POST[\'submit\'][\'Traceroute\'])): 
$command = "traceroute ".$GLOBALS[\'form\'][\'Traceroute\'];
echo "Результат трассировки маршрута между ".$_SERVER[\'HTTP_HOST\']." и ".$GLOBALS[\'form\'][\'Traceroute\'].":";
echo "<pre class=\\"lex\\">";
ob_end_flush();
system (escapeshellcmd($command));
flush();
ob_flush();
break;
}
echo "\\n";
ob_start (\'optimize\');
echo "</pre></td></tr></table>";


}

showbox();


?>


Оффлайн reLax[0x00]

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 68
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.microcat.ru
Работа с реестром
« Ответ #9 : 01 Апреля 2006, 17:59:12 »
а вообще-выкинь свой вынь-из-гея. ISA 2004 заюзай если у тебя прокси под виндой-не пожалеешь. Реальный прокси+фаерволл сделали мелкомягкие - у самого массивы ISA в DMZ сетях с Firewall Client\'s стоят - в ежовых рукавицах будешь юзеров держать-NAT давно уже в прокате...(правда дальше стоят фря+киска, но этого я считай что не говорил ;)

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
Работа с реестром
« Ответ #10 : 01 Апреля 2006, 20:32:34 »
[moderatorial]
Модераторы PHP, прибейте тему.
Слишком много умных здесь, поднимать темы трехлетней давности и говорить о том, о чем не имеют понятия.
LJ: Backslashed life (rss)

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28