VB 6.0 на сервере терминалов запускает программу установки Windows “Подготовка к установке” для пользователей, не являющихся администраторами

StackOverflow https://stackoverflow.com/questions/604707

  •  03-07-2019
  •  | 
  •  

Вопрос

Может показаться, что это вопрос из области информационных технологий, но большинство ИТ-специалистов, к которым я обращался, не смогли мне помочь.Там, где я работаю, у нас есть Сервер Windows 2003 где несколько разработчиков подключаются через RDP.Мы понизили привилегии некоторых из них (они были администраторами).И теперь, когда они начинают Visual Basic 6.0, они получают диалоговое окно установщика Windows "Подготовка к установке".Это исчезает примерно через 2 минуты, но это досада и пустая трата времени.Я попробовал несколько вещей, включая переименование msi.dll в system32 И dllcache, предоставляя разработчикам полный контроль над реестром и c:\Program Файлы, но, похоже, ничего не работает.

Будем признательны за любую помощь.

Спасибо

Нельсон Мармол

Это было полезно?

Решение 4

Ни одно из представленных здесь решений не устранило проблему.Спасибо за вашу помощь.После еще некоторых исследований я нашел эти шаги в статье, и это устранило проблему.:1) Перейдите в папку C:\Windows\System32 и найдите msi.dll.

2) Переименуйте msi.dll на любое другое имя.

3) Перейдите в раздел C:\Windows\System32\dllcache папка и переименуйте msi.dll слишком.

Если вы не выполнили этот шаг, папка msi.dll в System32 будет автоматически создана заново.

Если вы не смогли найти эту папку dllcache, возможно, вам потребуется изменить свойство в параметрах папки.

В проводнике Windows -> Перейдите в меню Сервис -> Выберите Параметры папки -> Перейдите на вкладку Вид -> Снимите флажок с параметра "Скрыть защищенные файлы операционной системы (Рекомендуется)".

4) Запустите VB6, и теперь вы можете запустить VB6 без получения сообщения об ошибке.

5) Переименуйте файл в msi.dll в папке System32 и dllcache - кэш папка.

Другие советы

Я бы попробовал изменить способ, которым они запускают VB.Создайте ссылку на vb6.exe и используйте ее вместо существующей ссылки, созданной программой установки.

Разжигай огонь ProcessMonitor (Мониторинг процессов) на сервере настройте фильтр для входа конкретного пользователя в систему, а затем заставьте его входить в систему в обычном режиме.Это может показать вам, какие разрешения отсутствуют при попытке доступа к определенному файлу.

Переименование / уничтожение msi.dll не является решением причины таких проблем, это просто маскирует проблему.

Обычно есть две возможные причины:

  1. Некоторый диск на сервере терминалов, недоступный непривилегированным пользователям - помогает разрешить доступ на чтение к корневой папке этого диска;

  2. Какой-то неправильно установленный компонент (в прошлый раз для меня это был mscomctl32.ocx), что легко обнаружить, исследуя журналы событий (хотя обычно записывается только GUID отсутствующего компонента, не всегда легко найти, какой реальный файл отсутствует / неправильно зарегистрирован).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top