Ошибка доступа к проекту> Окно ссылок? - PullRequest
13 голосов
/ 19 сентября 2008

В Visual Basic 6, когда я пытаюсь получить доступ к Проект> Ссылки , выдается ошибка:

Ошибка доступа к системному реестру

Я:

  • Войдите в систему как администратор локального компьютера
  • под управлением Windows XP Professional и
  • Я могу выполнить regedt32.exe и получить доступ ко всем ключам реестра просто отлично.

VB6 был установлен как локальный администратор.

Есть идеи, почему это происходит?


Я использую Crystal Reports 8.5, и он должен был решить эту проблему, но, очевидно, у меня все еще есть проблема с 8.5 установленной. Я также предпринял попытку переустановки отчетов Crystal, но безуспешно.

Ответы [ 14 ]

22 голосов
/ 12 ноября 2009

В зависимости от вашей операционной системы Windows (у меня Windows 7 Enterprise), вы можете попробовать предоставить права администратора для REGTLIB.EXE (находится в C: \ Windws). Щелкните правой кнопкой мыши файл REGTLIB.EXE. Выберите «Свойства» во всплывающем меню. Затем выберите вкладку «Совместимость». На вкладке «Совместимость» установите / установите флажок «Запустить эту программу от имени администратора». Нажмите кнопку ОК, чтобы сохранить изменения. Это может позаботиться о проблеме для вас. Это сработало для меня. Удачи.

11 голосов
/ 29 октября 2016

Для меня это сработало:

  1. Перейти к C: \ Program Files \ Microsoft Visual Studio \ VB98
  2. изменить свойство VB6.EXE, щелкнув правой кнопкой мыши -> Совместимость. В разделе уровня привилегий установите флажок Запускать эту программу от имени администратора.
5 голосов
/ 11 декабря 2009

Если вы используете Office 2010 (бета-версия), Word (по-видимому) пишет ограниченный раздел реестра. VB выдает ошибку при сканировании реестра. Ключ у меня есть: HKCR \ TypeLib {00020905-0000-0000-C000-000000000046} \ 8,5

Для Regmon - Фильтр для имени процесса -> "vb6.exe" и Результат -> "Доступ запрещен" Помогает найти его очень быстро.

Исправлено с помощью PSToosl (PSEXEC) для запуска редактора реестра (командная строка была psexec -i -d -s c: \ windows \ regedit.exe из командной строки запуска от имени администратора. НТН Джим. edit / ps - я на Windows 7 (x64) окно. Для повышенных разрешений требуется решение PSTools. ХР может сойти с рук немного меньше.

1 голос
/ 19 августа 2015

В Windows 7 перейдите в меню «Пуск», затем щелкните правой кнопкой мыши «Microsoft Visual Basic 6», затем выберите свойства и нажмите «Совместимость» в появившемся диалоговом окне, а затем установите флажок «Запускать программу от имени администратора».

1 голос
/ 11 декабря 2009

Вот решение от Microsoft. Он ссылается на проблему Crystal Reports, но решение просто использует regedit32 для обхода веток реестра HKEY_CLASSES_ROOT \ TypeLib и HKEY_CLASSES_ROOT \ CLSID для затемненных ключей и корректировки безопасности этих ключей. Также есть инструкции по исправлению безопасности, если regedit32 не может получить доступ к ключу. Артикул: 269383

1 голос
/ 21 сентября 2008

Я получил это на машине, которую использовал для разработки VB6. Я собирал много COM-библиотек из VB6 (без бинарной совместимости), и накопившаяся в реестре куча в конечном итоге получила слишком много.

Посмотрите, какой размер реестра и какой лимит вы установили. Я удвоил размер реестра, а затем отправился на поиски хорошего пылесоса для реестра.

1 голос
/ 20 сентября 2008

Вы можете попробовать Process Monitor , чтобы увидеть, какие ключи реестра доступны.

0 голосов
/ 25 февраля 2018

Я использую 64-разрядную версию Windows 10 Pro (10.0.16299 Build 16299). У меня была эта ошибка при попытке скомпилировать VB6 DLL.

В этом посте я видел несколько ответов о работе в режиме совместимости с правами администратора. Я подумал, что сначала попробую просто запустить в режиме совместимости для Windows XP (sp2) . Я смог скомпилировать мою DLL после установки этого флажка. Мне не нужно запускать от имени администратора.

0 голосов
/ 08 января 2018

Я исправил проблему. Но ни одно из предложенных выше предложений не сработало. Я дал всем полный контроль над ключом SYSTEM в реестре. Это создает нарушение безопасности. Я использую 64-битную Windows 7 с vb6 serice pack 6B.

0 голосов
/ 08 января 2018

Я пробовал все это на компьютере с Windows 7, но я исправил проблему, предоставив полный контроль над реестром SYSTEM. Я не знаю, какой ключ VB6 SP6B используется для чтения или записи. Поэтому я попытался вернуться с правами, и проблема вернулась. Итак, я исправил это, это создает серьезность.

...