Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.97/30: Рейтинг темы: голосов - 30, средняя оценка - 4.97
Особый статус
Эксперт WindowsВирусоборец
8429 / 1708 / 87
Регистрация: 15.04.2011
Сообщений: 5,520

Доработать скрипт регистрации dll & ocx

28.08.2013, 21:10. Показов 6615. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят,я дико сорри...но понадобился мне замечательный скрипт:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
@echo off
if "%1"=="" (
  Echo CreateObject^("Shell.Application"^).ShellExecute WScript.Arguments^(0^),"1","","runas",1 >"%~dp0Elevating.vbs"
  cscript.exe //nologo "%~dp0Elevating.vbs" "%~dpnx0"& Goto :eof
)
>nul del "%~dp0Elevating.vbs"
chdir /d "%~dp0"
for /f "delims=" %%A in ('dir /b /s /a-d-L "%~dp0*.dll","%~dp0*.ocx"') do (
  Echo Регистрация %%A
  regsvr32.exe "%%A"
  rem regsvr32.exe /s "%%A"&Rem Silent-режим регистрации
)
pause
Из темы:
https://www.cyberforum.ru/post4259662.html

Ну элевацию правов я конечно заделаю,определение ОС тоже.
А вот такой момент как решить:
не все библиотеки/dll регистрируются,надо как то сделать что бы если получается ошибка регистрации то она автоматом пропускается и заносится в лог.
И да-папку надо указать из переменной %windir%

Честно -не справлюсь с пропуском и логированием кода.
Помогете?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.08.2013, 21:10
Ответы с готовыми решениями:

Проверка регистрации OCX-компонента
Каким образом проверить, зарегистрирован ли OCX в ОС?

Добрый день! При регистрации библиотеки cscmd32.ocx ошибка 0x80040200
Суть проблемы такова: Имеется программа, она работает с базой, стояла на XP. При установке на Win7 (x86) возникает проблема регистрации...

query='SELECT * FROM resume WHERE ' & ''' & RecSet('place')& ''' & '=' & '''& s_loc &''' & - что не так?
упростил для краткости запрос. в чем ошибка? RecSet - это коннекшн. query='SELECT * FROM resume WHERE ' & ''' &...

26
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18035 / 7738 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
30.08.2013, 21:59
Студворк — интернет-сервис помощи студентам
Хм, и на XP тоже.

Добавлено через 37 минут
Koza Nozdri, да там просто все шикарно. Не над чем смеяться.
У меня только всегда вызывает улыбку слово микропрограмма.
Несколько раз потерял >>. А так норм. Можно еще код ошибки присобачить !errorlevel! в лог.
Ибо они разные - я отловил № 3,4,5, -1073741819.
В теме потом отпишу расшифровки.

Убил время... нашел кое-что новое для себя.
Оказывается, если вызывать Regsvr32 из консоли, то она не устанавливает код ошибки.
А если из батника, то устанавливает.

Без тебя не узнал бы про такой эффект. Позже я об этом напишу.

Добавлено через 3 минуты
Можешь упростить код использовав конструкцию:
Bash
1
2
3
4
5
(
regsvr32 /s lib1.dll || echo error !errorlevel! : ...
regsvr32 /s lib2.dll || echo error !errorlevel! : ...
...
) > log
Минусом такого подхода является: если юзерь закроет окно консоли раньше чем закончаться регистрации, то в лог ничего не попадет.

Добавлено через 4 минуты
Koza Nozdri, есть еще предложение убить все процессы (кроме тех, которые вырубают систему), и только после этого начинать регистрацию - по идее должно быть больше успешных.
0
Особый статус
Эксперт WindowsВирусоборец
8429 / 1708 / 87
Регистрация: 15.04.2011
Сообщений: 5,520
30.08.2013, 22:07  [ТС]
Цитата Сообщение от Dragokas Посмотреть сообщение
есть еще предложение убить все процессы (кроме тех, которые вырубают систему),
ну с предупреждением юзера.
и большими буквами мол если консольку выключишь-бабайка с монитора выскочит и за нос тяпнет)))штоб не трогал.

а так,да можно доработать.
с кодами ошибок разобраться шикарно будет-это почитай полноценная диагностика возможна,без аналогов.
скока не смотрел софтин-все туфта.

Добавлено через 1 минуту
Цитата Сообщение от Dragokas Посмотреть сообщение
1073741819
это по ходу 16 разрядное
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18035 / 7738 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
30.08.2013, 22:43


Цитата Сообщение от Koza Nozdri Посмотреть сообщение
это по ходу 16 разрядное
Вернее сказать 2-байтовое (DWORD). Смотри - он тут есть: Коды возврата ошибок (расшифровки ErrorLevel)*

Цитата Сообщение от Koza Nozdri Посмотреть сообщение
с кодами ошибок разобраться шикарно будет-это почитай полноценная диагностика возможна,без аналогов.
скока не смотрел софтин-все туфта.
Интересная у тебя методика.
Вполне, если только у юзера не будут поставлен софт с левыми службами, которые юзают регистрируемые либы - тогда этап № 2 - возможно, это перечислить все службы в системе, которые не являются стандартными - и отключить их перед регистрацией, но это по видимому для тебя будет сложнее реализовать.
А вообще в идеале сделать это так, как я приводил пример с win.update, т.е. и стандартные службы тоже отключать.

Вообщем если что найду время - помогу с этим. В идеале все можно написать очень даже сейфово.
1
30.08.2013, 22:46  [ТС]

Не по теме:

я wild читать ушел))) надо уже его выпустить.

0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18035 / 7738 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
30.08.2013, 22:53
И 3-й этап - это вообще классно бы было - объединить этот скрипт с твоими твиками для дефолтовых опций автозапуска служб.
А то вырубают всякие продвинутые юзеры службы, (вроде меня) по мотивам статьи "оптимизация Windows" а потом не знают от чего проблемы.

Тема отличная. Действительно.

Добавлено через 1 минуту

Не по теме:

Koza Nozdri, у тебя там что отдельная ветка по проэкту ? ;)

0
Особый статус
Эксперт WindowsВирусоборец
8429 / 1708 / 87
Регистрация: 15.04.2011
Сообщений: 5,520
30.08.2013, 23:01  [ТС]

Не по теме:

Цитата Сообщение от Dragokas Посмотреть сообщение
у тебя там что отдельная ветка по проэкту ?
у меня там башка в которой много чего,а ничего не успеть...я вроде кодить как вы еще не умею,но многие вещи касаемые проекта в голове на ходу схватываются и изобретаются.
Тока потом все улетает из памяти.
Надо и правда уже записывать.
Старею...



Добавлено через 1 минуту
Цитата Сообщение от Dragokas Посмотреть сообщение
объединить этот скрипт с твоими твиками для дефолтовых опций автозапуска служб.
я схему продумывал,надо научиться делать матрешки-батник в батнике,регфайл и т.д.
Иначе точности не будет.
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18035 / 7738 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
30.08.2013, 23:46

Не по теме:

Koza Nozdri, ты правда записывай.
У меня под руками уже на целый лист мелких дополнений. И я из него помню только половину... =)



Цитата Сообщение от Koza Nozdri Посмотреть сообщение
я схему продумывал,надо научиться делать матрешки-батник в батнике,регфайл и т.д.
Иначе точности не будет.
Батник в батнике - это по достижению какого то объема кода уже не очень хороший тон.
А нельзя сделать так, как я в WiLD спланировал? - будет:

Корень - Главный скрипт.cmd
Корень - папка bin\куча скриптов.cmd, .... .cmd ....

Запаковуешь все в архив. Юзер распаковует и запускает главный.

Модульный принцип.
У меня уже 2 утилиты - установщик и сканер, оба используют 3-й скрипт (определение версии ОС). Можешь глянуть - в гл. теме.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.08.2013, 23:46

OCX, DLL и сама программа
Можно ли как-то добавить в программу все нужные DLL и OCX файлы так, чтобы они работали "внутри" программы, а не в system32? Или...

Невозможно зарегистрировать DLL/OCX
Добрый день. Помогите, пожалуйста. при попытке установки Kutools for Excel (Надстройка для Экселя) выскакивает такое сообщение: ...

Как превратить dll в ocx в VB 6.0?
Среда разработки, в которой я работаю (не VB 6.0) не понимает dll, но понимает ocx. Как превратить dll в ocx в VB 6.0?

Где можно найти много .ocx и .dll
спасибо

Для чего нужны .DLL и .OCX файлы?
Подскажите, пожалуйста, как написать программу на VisualBasic for Application 6.0 с исползованием .DLL и .OCX файлов. А точнее, как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
GitHub Copilot в JetBrains: модель по умолчанию, Fix и контроль MCP
and_y87 12.10.2026
10 октября 2026 года GitHub обновил Copilot для JetBrains: добавил настройки стартовой модели, исправления из диагностики и управление автозапуском MCP. Поддержка IDE 2025. 1 прекращена — требуется. . .
День 5 из 28: Codex подсказывает следующий запрос
and_y87 12.10.2026
9 октября 2026 года OpenAI запустила бету Composer predictions — подсказок следующего сообщения в текущем диалоге Codex. Это помощь с формулировкой запроса, а не автоматическое продолжение задачи. . . .
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru