Войти

Показать полную графическую версию : [решено] Неполучается зарегистрировать Dll библиотеку


ufooo000
19-12-2016, 00:05
После запуска этого скрипта в контекстном меню появляется опция [ Registry OCX Files и Abort Registration ].
В этом скрипте срабатывает строка регистрации библиотек OCX, а при отмене регистрации происходит ошибка: 080040200.
@Echo Off
Reg.exe add "HKCR\ocxfile\Shell\Registry OCX Files\command" /ve /t REG_SZ /d "regsvr32.exe \"%%1\"" /f
Reg.exe add "HKCR\ocxfile\Shell\Abort Registration\command" /ve /t REG_SZ /d "regsvr32.exe /u \"%%1\"" /f
Exit
После запуска этого скрипта в контекстном меню появляется опция [ Registry Dll Files и Abort Registration ].
В этом скрипте выскакивает только ошибки
@Echo Off
Reg.exe add "HKCR\dllfile\Shell\Registry Dll Files\command" /ve /t REG_SZ /d "regsvr32.exe \"%%1\"" /f
Reg.exe add "HKCR\dllfile\Shell\Abort Registration\command" /ve /t REG_SZ /d "regsvr32.exe /u \"%%1\"" /f
Exit
B чем тут проблема...
https://s30.postimg.org/ejbvkpwkx/Registration_Error.jpg (https://postimg.org/image/fydg9fxnx/)l (https://postimage.org/)

Serguei Kouzmine
19-12-2016, 00:30
по-моему
опции /f нету у c:\Windows\system32\regsvr32.exe
- надо /i и/или /s
и несколько ошибок с кавычками и знаком процента (
и порядок аргументов

ну и dll должна быть правильная

Iska
19-12-2016, 00:30
B чем тут проблема... »
Ваш код не умеет повышать свои привилегии с обычных до административных (ключевые слова: UAC, Run as Administrator). При использовании глаголов посредством файлового менеджера, запущенного с административными привилегиями, проблем не должно быть. Речь, разумеется, про ОС Vista+.

P.S. Делаете — делайте полноценно: текст, описание, команда. И не оставляйте Abort Registration как глагол по умолчанию.

ufooo000
19-12-2016, 01:46
Вот этих файлов я зарегистрировал:
NPSWF32_23_0_0_185.dll
atitmmxx.dll
atitmmxx.dll
midas.dll
xactengine3_7.dll
XAudio2_7.dll
CapiCom.dll
А вот этого не получается: FlashUtil32_23_0_0_185_Plugin.dll

Iska
19-12-2016, 02:01
Вот этих файлов я зарегистрировал: »
Без разницы какие. Лишь бы функции соответствующие содержали.

ufooo000
19-12-2016, 02:23
Без разницы какие. »
А тогда что на этого ругается: FlashUtil32_23_0_0_185_Plugin.dll

Iska
19-12-2016, 03:01
Я же написал выше:
Лишь бы функции соответствующие содержали. »
Не каждую библиотеку можно зарегистрировать таким образом. Вы представляете, что это за процесс, и для чего он, собственно, нужен? Или просто пробуете регистрировать/де-регистрировать всё подряд?!

INFO: How Regsvr32.exe Registers and Unregisters COM DLLs (https://support.microsoft.com/en-us/kb/207132):
Your DLL must implement DllRegisterServer and DllUnregisterServer, which contain the logic that is necessary to add or delete the required registry entries for the COM component. RegSvr32.exe finds the entry point to these functions, and calls them appropriately.

Указанная библиотека не экспортирует перечисленные функции. Вот, можете сравнить:
http://i.imgur.com/foMZiqn.png
Слева — FlashUtil64_22_0_0_209_Plugin.dll, справа — AutoItX3_x64.dll.




© OSzone.net 2001-2012