Не могу понять, как зарегистрировать dll, чтобы избежать "Не могу получить объект clsid от progid"

Я пытаюсь использовать autoit с java, и установил AHK и мост jacob для autoitx4java.AutoItx. У меня есть jacob dll (jacob-1.18-86x.dll), хранящийся в windows/syswow64 . Когда я пытаюсь скомпилировать программу (импорт import java.text.SimpleDateFormat; import java.util.Date; import autoitx4java.AutoItX;)Я получаю ошибку

Exception in thread "main" com.jacob.com.ComFailException: Can't get object clsid from progid
at com.jacob.com.Dispatch.createInstanceNative(Native Method)
at com.jacob.com.Dispatch.<init>(Dispatch.java:99)
at com.jacob.activeX.ActiveXComponent.<init>(ActiveXComponent.java:58)
at autoitx4java.AutoItX.<init>(AutoItX.java:181)
at MainTest.login(MainTest.java:126)
at MainTest.setadmin(MainTest.java:181)
at MainTest.runbasic(MainTest.java:21)
at MainTest.main(MainTest.java:15)

После поиска я подумал, что может быть, что dll не была зарегистрирована, например, как создать объект с помощью JACOB, но это не сработало. После ввода оттуда команды регистрации я получаю "RegAsm: ошибка RA0000: не удалось загрузить" c:\windows\syswow64\jacob-1.18-x86.dll ", поскольку это не vaild сборка.NET. Также попытался"regsvr32 jacob-1.18-x86.dll"из другого способа регистрации за пределами ответа выше, но это дало мне" Модуль "jacob-1.18-x86.dll" был загружен, но точка входа DllRegisterServer не была найдена. Убедитесь, что "jacob-1.18-x86.dll" является допустимым файлом DLL или OCX, и повторите попытку. Есть идеи?

Изменить: кто-то предположил, что это было для AutoIt, а не autoHockkey. Это исправлено в вопросе и тегах. Спасибо,

2 ответа

Решение

Просто установил autoit-v3-setup.exe снова и все заработало.

После регистрации только AutoITX3 DLL проблема была решена. Для Win32: AutoItX3.dll и Win64: AutoItX3_x64.dll

Зарегистрируйтесь с помощью команды: regsvr32 AbsolutePathOfRequiredDLLFile

Другие вопросы по тегам