IE 2017

Регистрация ActiveX, решение проблемы админских прав

Программирование - Внешние компоненты

Регистрация ActiveX, решение проблемы админских прав

Столкнулся с проблемой автоматической установки ActiveX из 1С - регистрация должна быть под админскими правами.

Покопавшись в документациях, написал приложение.

Данное консольное приложение принимает в качестве параметров 1. Имя регистрируемое компоненты 2. Имя пользователя 3. Пароль 4. Домен (если нужно) и регистрирует компоненту.

Пример запуска из внешней обработки;

	ИмяВременногоФайлаZIP = ПолучитьИмяВременногоФайла("zip");
	ДвоичныеДанные = ПолучитьМакет("Архив");
	ДвоичныеДанные.Записать(ИмяВременногоФайлаZIP);
	
	// Извлекаем из ZIP-архива все сохраняем во временный файл
	ЧтениеZIP = Новый ЧтениеZipФайла(ИмяВременногоФайлаZIP,);
	Каталог =  КаталогВременныхФайлов()+ "_aMap";
	ЧтениеZIP.ИзвлечьВсе(Каталог, РежимВосстановленияПутейФайловZIP.НеВосстанавливать);
	ЧтениеZIP.Закрыть();
	
	ЗапуститьПриложение(Каталог + "\reg.exe --component.dll --user --pass");	
	
	Предупреждение("Была установлена новаябиблиотека Программу следует перезагрузить");
        ЗавершитьРаботуСистемы();

Скачать файлы

Наименование Файл Версия Размер
reg.exe
.exe 6,50Kb
04.03.14
2
.exe 6,50Kb 2 Скачать

См. также

Комментарии
1. Франко Деллиани (Franco) 66 05.03.14 10:08 Сейчас в теме
То есть всё равно - само собой - имя пользователя и пароль администратора?
2. Андрей Жила (Ukrandruha) 90 05.03.14 10:33 Сейчас в теме
(1) Franco, Да, имя и пароль администратора. У нас он одинаковый на всех компьютерах.
3. Tpylalist (Операция1Ы) 05.03.14 12:05 Сейчас в теме
4. Vladimir Zemenkov (KillHunter) 6 05.03.14 12:10 Сейчас в теме
Неплохое решение, а зачем тебе исходники там же усе описанно, берешь да встраиваешь.
5. Артур Аюханов (artbear) 880 05.03.14 12:11 Сейчас в теме
Регистрирует именно АктивИкс или ДотНет-компоненты?
6. Андрей Жила (Ukrandruha) 90 05.03.14 12:22 Сейчас в теме
(5) artbear, Регистрирует activex и связанные сборки, все должно быть упаковано в архив и помещено в макет
7. Артур Аюханов (artbear) 880 05.03.14 12:54 Сейчас в теме
8. Александр Зубцов (iov) 363 08.03.14 02:35 Сейчас в теме
запустить неизвестное приложение без исходников на боевом сервере?
кто последний в очереди будет? я за вами...
9. Андрей Жила (Ukrandruha) 90 11.03.14 10:22 Сейчас в теме
(8) iov, это net приложение, при желании можете посмотреть код в рефлекторе. Не вижу проблем
10. Alex Melnichuk (Amel2010) 22 14.11.16 11:27 Сейчас в теме
У меня дает ошибку "неверное имя или пароль". Отсюда вопрос: нужно ли указывать имя домена в имени пользователя?
И, если да, то в каком виде? И как передать служебные символы в пароле?

Сейчас только заметил, что домен указывается 4-м параметром... Но это не помогло - ругается так же.
11. Alex Melnichuk (Amel2010) 22 14.11.16 11:52 Сейчас в теме
Разобрался - не нужно указывать "--" перед аргументами - так выполнилось без ошибок. НО!
Компонента все равно не регистрируется. Подозреваю, проблема в том, что компонента 32-битная, а регистрируется в 64-битной среде.
Нужно вызывать в таком случае %SystemRoot%\SysWoW64\regsvr32, а не %SystemRoot%\System32\regsvr32.
Автор, можно ли как-то устранить данный момент?
Коллеги, может кто подскажет, как автоматически регистрировать ActiveX в таком случае?
12. Роберт В е р т и н с к и й (v3rter) 14.11.16 14:30 Сейчас в теме
Имя файла, совпадающее с консольной командой REG, считаю неудачным. Что-нибудь вроде xregsvr было бы уместнее.
Оставьте свое сообщение