У меня есть 32-разрядное приложение, которое использует 32-разрядную версию VC++ 6.DLL (развернутая как Win32UMinDependency), которую я не могу зарегистрировать на 64-битной машине Windows 7/8. Наряду с приложением vbAccelerator ActiveX элементы управления, многие другие сторонние.DLL, и в доме построен.DLL файлы. Я могу зарегистрировать каждый.DLL в программном пакете, кроме одного. Почему это?
Я попытался использовать regsvr32
из SysWOW64
и system32
, я попытался поставить.DLL в папке SysWOW64
и попытался зарегистрироваться, то же самое с папкой system32
. Я пытался отменить регистрацию. Я пробовал старые версии, новые версии, текущую версию. Я попытался запустить приложение в разных режимах совместимости. Вы называете это, я попробовал это. Это просто не работает.
Такое поведение странно, потому что.DLL, наряду со всеми остальными, устанавливаются на машину со встроенным InstallShield.Установочный пакет MSI, и приложение отлично работает при чистой установке. Но мы столкнулись с ошибкой - после N переустановок - когда мне пришлось установить VB6 на машину и пройтись по коду, чтобы посмотреть что.У DLL были проблемы. Просто так получилось.DLL я не могу зарегистрировать, и затем я заметил, что элементы управления ActiveX не отображают свои данные (в сетке были данные, но данные не отображались).
После создания новой учетной записи пользователя -> предоставления ей прав администратора -> входа в нее, затем деинсталляции VB6 и попытки установить пакет VS6 (VB6, VC++6, MDAC, VS6 Service Pack 6), произошел сбой. Поэтому я попытался установить исходный пакет VB6 снова, и это не удалось (не помню ошибки). После разочарования я загрузил свое приложение, и все работало нормально, однако я все еще не мог зарегистрировать.DLL. Я переключился обратно на исходную учетную запись пользователя, и она также работала там.
Итак, как это возможно, что.DLL может иметь ключ в regedit
и приложение может нормально работать, чтобы не иметь возможности загрузить.DLL в коде, до Windows, не в состоянии установить VS6, назад к приложению, работающему снова?