UdAvSt
Junior Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Задача поставила меня в тупик, нужно при логоне пользователя @userid прописывать в сведения о пользователе в Office. Дело в том, что у меня на машинах есть Office2k и Office 3k, ну я думал хранятся себе данные в ветке какой-нить об имени пользователя, но всё не так просто http://support.microsoft.com/kb/290528/ru В принципе можно сразу на все офисы писать в реестр, менять "UserName"=hex:41,00,6c,00,65,00,78,00,38,00,00,00 но ведь имя надо как-то в такую строку преобразовать в в REG_BINARY ... PS Нужно для того, чтобы оффис в создаваемых документах проставлял реальное имя пользователя. ...Всё, сваял... $LE=LEN(@USERID) :LOOPLE $LE=($LE-1) $x=DECTOHEX (Asc(SUBSTR(@USERID, LEN(@USERID)-$LE, 1))) $ren=$ren+$x+"00" IF ($LE > 0) GOTO LOOPLE ELSE $ren=$ren+"0000" ENDIF Writevalue ("HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Common\UserInfo", "UserName", $ren, "REG_BINARY") Writevalue ("HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Common\UserInfo", "UserName", $ren, "REG_BINARY") Writevalue ("HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Common\UserInfo", "UserName", $ren, "REG_BINARY") PPS Мне не очень нравятся последние 3 строчки, может можно узнавать как-то где офис и записывать конкретно, а не создавать ненужные ветки? | Всего записей: 171 | Зарегистр. 24-09-2005 | Отправлено: 13:19 21-11-2007 | Исправлено: UdAvSt, 17:32 21-11-2007 |
|