Ошибка разрешение отклонено код 800а0046

В этой статье представлена ошибка с номером Ошибка 800A0046, известная как Ошибка программы очистки установщика Windows 800A0046, описанная как Ошибка 800A0046: Возникла ошибка в приложении Windows Installer CleanUp Utility. Приложение будет закрыто. Приносим свои извинения за неудобства.

О программе Runtime Ошибка 800A0046

Время выполнения Ошибка 800A0046 происходит, когда Windows Installer CleanUp Utility дает сбой или падает во время запуска, отсюда и название. Это не обязательно означает, что код был каким-то образом поврежден, просто он не сработал во время выполнения. Такая ошибка появляется на экране в виде раздражающего уведомления, если ее не устранить. Вот симптомы, причины и способы устранения проблемы.

Определения (Бета)

Здесь мы приводим некоторые определения слов, содержащихся в вашей ошибке, в попытке помочь вам понять вашу проблему. Эта работа продолжается, поэтому иногда мы можем неправильно определить слово, так что не стесняйтесь пропустить этот раздел!

  • Установщик — ОБЩАЯ ПОДДЕРЖКА УСТАНОВЩИКА НЕ ВОСПРИНИМАЕТСЯ
  • Утилита . Утилита — это системное программное обеспечение, предназначенное для анализа, настройки и оптимизировать или поддерживать компьютер.
  • Windows — ОБЩАЯ ПОДДЕРЖКА WINDOWS НЕ В ТЕМЕ.
  • Установщик Windows — Установщик Microsoft Windows является услуга установки и настройки, предоставляемая с Windows
Симптомы Ошибка 800A0046 — Ошибка программы очистки установщика Windows 800A0046

Ошибки времени выполнения происходят без предупреждения. Сообщение об ошибке может появиться на экране при любом запуске %программы%. Фактически, сообщение об ошибке или другое диалоговое окно может появляться снова и снова, если не принять меры на ранней стадии.

Возможны случаи удаления файлов или появления новых файлов. Хотя этот симптом в основном связан с заражением вирусом, его можно отнести к симптомам ошибки времени выполнения, поскольку заражение вирусом является одной из причин ошибки времени выполнения. Пользователь также может столкнуться с внезапным падением скорости интернет-соединения, но, опять же, это не всегда так.

Fix Ошибка программы очистки установщика Windows 800A0046 (Error Ошибка 800A0046)
(Только для примера)

Причины Ошибка программы очистки установщика Windows 800A0046 — Ошибка 800A0046

При разработке программного обеспечения программисты составляют код, предвидя возникновение ошибок. Однако идеальных проектов не бывает, поскольку ошибки можно ожидать даже при самом лучшем дизайне программы. Глюки могут произойти во время выполнения программы, если определенная ошибка не была обнаружена и устранена во время проектирования и тестирования.

Ошибки во время выполнения обычно вызваны несовместимостью программ, запущенных в одно и то же время. Они также могут возникать из-за проблем с памятью, плохого графического драйвера или заражения вирусом. Каким бы ни был случай, проблему необходимо решить немедленно, чтобы избежать дальнейших проблем. Ниже приведены способы устранения ошибки.

Методы исправления

Ошибки времени выполнения могут быть раздражающими и постоянными, но это не совсем безнадежно, существует возможность ремонта. Вот способы сделать это.

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

Обратите внимание: ни ErrorVault.com, ни его авторы не несут ответственности за результаты действий, предпринятых при использовании любого из методов ремонта, перечисленных на этой странице — вы выполняете эти шаги на свой страх и риск.

Метод 2 — Обновите / переустановите конфликтующие программы

Использование панели управления

  • В Windows 7 нажмите кнопку «Пуск», затем нажмите «Панель управления», затем «Удалить программу».
  • В Windows 8 нажмите кнопку «Пуск», затем прокрутите вниз и нажмите «Дополнительные настройки», затем нажмите «Панель управления»> «Удалить программу».
  • Для Windows 10 просто введите «Панель управления» в поле поиска и щелкните результат, затем нажмите «Удалить программу».
  • В разделе «Программы и компоненты» щелкните проблемную программу и нажмите «Обновить» или «Удалить».
  • Если вы выбрали обновление, вам просто нужно будет следовать подсказке, чтобы завершить процесс, однако, если вы выбрали «Удалить», вы будете следовать подсказке, чтобы удалить, а затем повторно загрузить или использовать установочный диск приложения для переустановки. программа.

Использование других методов

  • В Windows 7 список всех установленных программ можно найти, нажав кнопку «Пуск» и наведя указатель мыши на список, отображаемый на вкладке. Вы можете увидеть в этом списке утилиту для удаления программы. Вы можете продолжить и удалить с помощью утилит, доступных на этой вкладке.
  • В Windows 10 вы можете нажать «Пуск», затем «Настройка», а затем — «Приложения».
  • Прокрутите вниз, чтобы увидеть список приложений и функций, установленных на вашем компьютере.
  • Щелкните программу, которая вызывает ошибку времени выполнения, затем вы можете удалить ее или щелкнуть Дополнительные параметры, чтобы сбросить приложение.

Метод 1 — Закройте конфликтующие программы

Когда вы получаете ошибку во время выполнения, имейте в виду, что это происходит из-за программ, которые конфликтуют друг с другом. Первое, что вы можете сделать, чтобы решить проблему, — это остановить эти конфликтующие программы.

  • Откройте диспетчер задач, одновременно нажав Ctrl-Alt-Del. Это позволит вам увидеть список запущенных в данный момент программ.
  • Перейдите на вкладку «Процессы» и остановите программы одну за другой, выделив каждую программу и нажав кнопку «Завершить процесс».
  • Вам нужно будет следить за тем, будет ли сообщение об ошибке появляться каждый раз при остановке процесса.
  • Как только вы определите, какая программа вызывает ошибку, вы можете перейти к следующему этапу устранения неполадок, переустановив приложение.

Метод 3 — Обновите программу защиты от вирусов или загрузите и установите последнюю версию Центра обновления Windows.

Заражение вирусом, вызывающее ошибку выполнения на вашем компьютере, необходимо немедленно предотвратить, поместить в карантин или удалить. Убедитесь, что вы обновили свою антивирусную программу и выполнили тщательное сканирование компьютера или запустите Центр обновления Windows, чтобы получить последние определения вирусов и исправить их.

Метод 4 — Переустановите библиотеки времени выполнения

Вы можете получить сообщение об ошибке из-за обновления, такого как пакет MS Visual C ++, который может быть установлен неправильно или полностью. Что вы можете сделать, так это удалить текущий пакет и установить новую копию.

  • Удалите пакет, выбрав «Программы и компоненты», найдите и выделите распространяемый пакет Microsoft Visual C ++.
  • Нажмите «Удалить» в верхней части списка и, когда это будет сделано, перезагрузите компьютер.
  • Загрузите последний распространяемый пакет от Microsoft и установите его.

Метод 5 — Запустить очистку диска

Вы также можете столкнуться с ошибкой выполнения из-за очень нехватки свободного места на вашем компьютере.

  • Вам следует подумать о резервном копировании файлов и освобождении места на жестком диске.
  • Вы также можете очистить кеш и перезагрузить компьютер.
  • Вы также можете запустить очистку диска, открыть окно проводника и щелкнуть правой кнопкой мыши по основному каталогу (обычно это C :)
  • Щелкните «Свойства», а затем — «Очистка диска».

Метод 6 — Переустановите графический драйвер

Если ошибка связана с плохим графическим драйвером, вы можете сделать следующее:

  • Откройте диспетчер устройств и найдите драйвер видеокарты.
  • Щелкните правой кнопкой мыши драйвер видеокарты, затем нажмите «Удалить», затем перезагрузите компьютер.

Метод 7 — Ошибка выполнения, связанная с IE

Если полученная ошибка связана с Internet Explorer, вы можете сделать следующее:

  1. Сбросьте настройки браузера.
    • В Windows 7 вы можете нажать «Пуск», перейти в «Панель управления» и нажать «Свойства обозревателя» слева. Затем вы можете перейти на вкладку «Дополнительно» и нажать кнопку «Сброс».
    • Для Windows 8 и 10 вы можете нажать «Поиск» и ввести «Свойства обозревателя», затем перейти на вкладку «Дополнительно» и нажать «Сброс».
  2. Отключить отладку скриптов и уведомления об ошибках.
    • В том же окне «Свойства обозревателя» можно перейти на вкладку «Дополнительно» и найти пункт «Отключить отладку сценария».
    • Установите флажок в переключателе.
    • Одновременно снимите флажок «Отображать уведомление о каждой ошибке сценария», затем нажмите «Применить» и «ОК», затем перезагрузите компьютер.

Если эти быстрые исправления не работают, вы всегда можете сделать резервную копию файлов и запустить восстановление на вашем компьютере. Однако вы можете сделать это позже, когда перечисленные здесь решения не сработают.

Другие языки:

How to fix Error 800A0046 (Windows Installer Cleanup Utility Error 800A0046) — Error 800A0046: Windows Installer CleanUp Utility has encountered a problem and needs to close. We are sorry for the inconvenience.
Wie beheben Fehler 800A0046 (Windows Installer Cleanup Utility Fehler 800A0046) — Fehler 800A0046: Das Windows Installer CleanUp-Dienstprogramm hat ein Problem festgestellt und muss geschlossen werden. Wir entschuldigen uns für die Unannehmlichkeiten.
Come fissare Errore 800A0046 (Errore dell’utilità di pulizia di Windows Installer 800A0046) — Errore 800A0046: l’utilità di pulizia di Windows Installer ha riscontrato un problema e deve essere chiusa. Ci scusiamo per l’inconveniente.
Hoe maak je Fout 800A0046 (Windows Installer Cleanup Utility Fout 800A0046) — Fout 800A0046: Windows Installer CleanUp Utility heeft een probleem ondervonden en moet worden afgesloten. Excuses voor het ongemak.
Comment réparer Erreur 800A0046 (Erreur 800A0046 de l’utilitaire de nettoyage Windows Installer) — Erreur 800A0046 : l’utilitaire Windows Installer CleanUp a rencontré un problème et doit se fermer. Nous sommes désolés du dérangement.
어떻게 고치는 지 오류 800A0046 (Windows Installer 정리 유틸리티 오류 800A0046) — 오류 800A0046: Windows Installer CleanUp 유틸리티에 문제가 발생해 닫아야 합니다. 불편을 드려 죄송합니다.
Como corrigir o Erro 800A0046 (Erro 800A0046 do utilitário de limpeza do Windows Installer) — Erro 800A0046: O Windows Installer CleanUp Utility encontrou um problema e precisa fechar. Lamentamos o inconveniente.
Hur man åtgärdar Fel 800A0046 (Windows Installer Cleanup Utility Error 800A0046) — Fel 800A0046: Windows Installer CleanUp Utility har stött på ett problem och måste avslutas. Vi är ledsna för besväret.
Jak naprawić Błąd 800A0046 (Błąd narzędzia do czyszczenia instalatora Windows 800A0046) — Błąd 800A0046: Narzędzie Windows Installer CleanUp napotkało problem i musi zostać zamknięte. Przepraszamy za niedogodności.
Cómo arreglar Error 800A0046 (Error 800A0046 de la utilidad de limpieza del instalador de Windows) — Error 800A0046: La utilidad de limpieza de Windows Installer ha detectado un problema y debe cerrarse. Lamentamos las molestias.

The Author Об авторе: Фил Харт является участником сообщества Microsoft с 2010 года. С текущим количеством баллов более 100 000 он внес более 3000 ответов на форумах Microsoft Support и создал почти 200 новых справочных статей в Technet Wiki.

Следуйте за нами: Facebook Youtube Twitter

Последнее обновление:

10/11/22 05:47 : Пользователь Windows 10 проголосовал за то, что метод восстановления 2 работает для него.

Рекомендуемый инструмент для ремонта:

Этот инструмент восстановления может устранить такие распространенные проблемы компьютера, как синие экраны, сбои и замораживание, отсутствующие DLL-файлы, а также устранить повреждения от вредоносных программ/вирусов и многое другое путем замены поврежденных и отсутствующих системных файлов.

ШАГ 1:

Нажмите здесь, чтобы скачать и установите средство восстановления Windows.

ШАГ 2:

Нажмите на Start Scan и позвольте ему проанализировать ваше устройство.

ШАГ 3:

Нажмите на Repair All, чтобы устранить все обнаруженные проблемы.

СКАЧАТЬ СЕЙЧАС

Совместимость

Требования

1 Ghz CPU, 512 MB RAM, 40 GB HDD
Эта загрузка предлагает неограниченное бесплатное сканирование ПК с Windows. Полное восстановление системы начинается от $19,95.

ID статьи: ACX012844RU

Применяется к: Windows 10, Windows 8.1, Windows 7, Windows Vista, Windows XP, Windows 2000

Совет по увеличению скорости #63

Как удалить лишние панели инструментов:

Удаление дополнительных панелей инструментов с панели задач Windows и интернет-браузера может повысить скорость вашего компьютера. Эти дополнительные панели инструментов часто устанавливаются вместе при установке плагинов и программного обеспечения. И в большинстве случаев они перекрывают уже имеющуюся у вас функцию.

Нажмите здесь, чтобы узнать о другом способе ускорения работы ПК под управлением Windows

Icon Ex Номер ошибки: Ошибка 0x800A0046
Название ошибки: Microsoft Update Error 0X800A0046
Описание ошибки: Ошибка 0x800A0046: Возникла ошибка в приложении Microsoft Update. Приложение будет закрыто. Приносим извинения за неудобства.
Разработчик: Microsoft Corporation
Программное обеспечение: Microsoft Update
Относится к: Windows XP, Vista, 7, 8, 10, 11

Определение «Microsoft Update Error 0X800A0046»

Как правило, специалисты по ПК называют «Microsoft Update Error 0X800A0046» как тип «ошибки времени выполнения». Когда дело доходит до Microsoft Update, инженеры программного обеспечения используют арсенал инструментов, чтобы попытаться сорвать эти ошибки как можно лучше. Как и во всем в жизни, иногда такие проблемы, как ошибка 0x800A0046, упускаются из виду.

Ошибка 0x800A0046 также отображается как «Microsoft Update Error 0X800A0046». Это распространенная ошибка, которая может возникнуть после установки программного обеспечения. После возникновения ошибки 0x800A0046 пользователь программного обеспечения имеет возможность сообщить разработчику об этой проблеме. Команда программирования может использовать эту информацию для поиска и устранения проблемы (разработка обновления). Если есть запрос на обновление Microsoft Update, это обычно обходной путь для устранения проблем, таких как ошибка 0x800A0046 и другие ошибки.

Что на самом деле вызывает ошибку времени выполнения 0x800A0046?

В первый раз, когда вы можете столкнуться с ошибкой среды выполнения Microsoft Update обычно с «Microsoft Update Error 0X800A0046» при запуске программы. Три распространенные причины, по которым ошибки во время выполнения, такие как всплывающее окно ошибки 0x800A0046:

Ошибка 0x800A0046 Crash — она называется «Ошибка 0x800A0046», когда программа неожиданно завершает работу во время работы (во время выполнения). Обычно это происходит, когда Microsoft Update не может обрабатывать предоставленный ввод или когда он не знает, что выводить.

«Microsoft Update Error 0X800A0046» Утечка памяти — Ошибка 0x800A0046 утечка памяти происходит и предоставляет Microsoft Update в качестве виновника, перетаскивая производительность вашего ПК. Критическими проблемами, связанными с этим, могут быть отсутствие девыделения памяти или подключение к плохому коду, такому как бесконечные циклы.

Error 0x800A0046 Logic Error — Ошибка программной логики возникает, когда, несмотря на точный ввод от пользователя, производится неверный вывод. Виновником в этом случае обычно является недостаток в исходном коде Microsoft Corporation, который неправильно обрабатывает ввод.

Повреждение, отсутствие или удаление файлов Microsoft Update Error 0X800A0046 может привести к ошибкам Microsoft Update. Большую часть проблем, связанных с данными файлами, можно решить посредством скачивания и установки последней версии файла Microsoft Corporation. Кроме того, регулярная очистка и оптимизация реестра Windows предотвратит создание неправильных ссылок на пути к файлам Microsoft Corporation, поэтому мы настоятельно рекомендуем регулярно выполнять сканирование реестра.

Типичные ошибки Microsoft Update Error 0X800A0046

Частичный список ошибок Microsoft Update Error 0X800A0046 Microsoft Update:

  • «Ошибка в приложении: Microsoft Update Error 0X800A0046»
  • «Ошибка программного обеспечения Win32: Microsoft Update Error 0X800A0046»
  • «Извините за неудобства — Microsoft Update Error 0X800A0046 имеет проблему. «
  • «Microsoft Update Error 0X800A0046 не может быть найден. «
  • «Microsoft Update Error 0X800A0046 не может быть найден. «
  • «Ошибка запуска программы: Microsoft Update Error 0X800A0046.»
  • «Не удается запустить Microsoft Update Error 0X800A0046. «
  • «Microsoft Update Error 0X800A0046 остановлен. «
  • «Неверный путь к приложению: Microsoft Update Error 0X800A0046.»

Проблемы Microsoft Update Microsoft Update Error 0X800A0046 возникают при установке, во время работы программного обеспечения, связанного с Microsoft Update Error 0X800A0046, во время завершения работы или запуска или менее вероятно во время обновления операционной системы. Отслеживание того, когда и где возникает ошибка Microsoft Update Error 0X800A0046, является важной информацией при устранении проблемы.

Истоки проблем Microsoft Update Error 0X800A0046

Проблемы Microsoft Update Error 0X800A0046 вызваны поврежденным или отсутствующим Microsoft Update Error 0X800A0046, недопустимыми ключами реестра, связанными с Microsoft Update, или вредоносным ПО.

В основном, осложнения Microsoft Update Error 0X800A0046 связаны с:

  • Недопустимые разделы реестра Microsoft Update Error 0X800A0046/повреждены.
  • Файл Microsoft Update Error 0X800A0046 поврежден от вирусной инфекции.
  • Microsoft Update Error 0X800A0046 злонамеренно или ошибочно удален другим программным обеспечением (кроме Microsoft Update).
  • Другая программа, конфликтующая с Microsoft Update Error 0X800A0046 или другой общей ссылкой Microsoft Update.
  • Поврежденная установка или загрузка Microsoft Update (Microsoft Update Error 0X800A0046).

Продукт Solvusoft

Загрузка
WinThruster 2022 — Проверьте свой компьютер на наличие ошибок.

Совместима с Windows 2000, XP, Vista, 7, 8, 10 и 11

Установить необязательные продукты — WinThruster (Solvusoft) | Лицензия | Политика защиты личных сведений | Условия | Удаление

The Microsoft VBScript runtime error: Permission denied 800A0046, may faced while trying to install or uninstall a program or driver on your computer. The error 800A0046 is commonly caused because you ‘ll try to install a program on your computer without having administrative privileges or because you have enabled the User Account Control (UAC) on Windows 7 or Vista based computers. 

Permission denied 800A0046

In most cases the VBScript runtime error 800A0046, is occurred whenever you try to install the «Windows Installer Clean Up» utility, in order to remove a program from the system that you cannot uninstall by using the normal way (Programs and features).

This article contains two(2) methods to fix the «Permission denied 800A0046» Windows Script Host Error, on Windows 7 or Vista.

How to bypass the Windows Script Host «Permission Denied – Code 800A0046».

Before applying the methods below to resolve the VBScript Runtime 800A0046 error, first make sure that you have logged on as Administrator on your system,

Method 1: DISABLE User Account Control (UAC).

In order to disable the UAC (User Account Control):

1. Go to Start > Control Panel.
2. Open User Accounts.
3. Click at Change User Account Control settings.

VBScript Runtime error 800A0046

4, Move the slider on the left to Never notify and click OK.
5. Restart your computer.

disable uac - user account control

6. After restart, install (or uninstall) the program that caused the 800A0046 error.

Method 2: RUN the Installer (Setup.exe) as Administrator

In order to install a program as administrator:

1. Right click at the program (installer) that you ‘re trying to install and click Run as Administrator.

run as adminsitrator

That’s all folks! Did it work for you?

Please leave a comment in the comment section below or even better: like and share this blog post in the social networks to help spread the word about this solution.

If this article was useful for you, please consider supporting us by making a donation. Even $1 can a make a huge difference for us.

  • Remove From My Forums
  • Question

  • I’m so close to get my script to work with a user, but I need your help.
    I have a Terminal Server 2003 with policy restrictions. My users can’t even see how much megabytes they have in use. So I created the following script. It runs perfectly with an administrator account:


    Dim oFS, oFolder
    Dim total
    Dim message
    set oFS = WScript.CreateObject(«Scripting.FileSystemObject»)
    set oFolder1 = oFS.GetFolder(«servershare$»)
    set oFolder2 = oFS.GetFolder(«servershare1$»)
    set oFolder3 = oFS.GetFolder(«servershare2$»)
    Wscript.Sleep 300
    total = oFolder1.Size + oFolder2.Size + oFolder3.Size
    message=MsgBox («Size: » & vbTab & oFolder1.Size /10241024 & «MB» & vbTab & » Path: » & vbTab & oFolder1.Path & Chr(10) _
    & «Size: » & vbTab & oFolder2.Size /10241024 & «MB» & vbTab & » Path: » & vbTab & oFolder2.Path & Chr(10) _
    & «Size: » & vbTab & oFolder3.Size /10241024 & «MB» & vbTab & » Path: » & vbTab & oFolder3.Path & Chr(10) _
    & «Total: » & vbTab & total /10241024 & «MB»,64,»megabytes in use»)

    The problem I’m facing is that I can’t distribute it to my users because when this script runs as an user I receive this error:
    Windows Script Host
    Script: pathandname.vbs
    Line: 9
    Char: 1
    Error: Permission denied
    Code: 800A0046
    Source: Microsoft VBScript runtime error

    I’ve checked the users permission on the servershare’s and they have Full Control.
    Also on the ACL on the script the user has Full Control.

    What else can I check?
    Is there a setting in some GPO that denies users to run a .vbs?

    Please let me know when you need more information to solve this.

    Cheers,
    Yuri

Answers

  • Are you sure the users have permissions to ALL files and directories on the shares?
    If there is as much as one file or folder to which the user hasn’t got at least «list contents» permission the script will fail with the above message.

    If you check the properties of the root of the share from explorer, first as an administrator and then as a user. Does it show the same amount of files/folders and the same size?
    A difference here would indicate that the user doesn’t have permissions to everything.

    • Marked as answer by

      Tuesday, September 1, 2009 9:14 AM

Информация о системе:

На вашем ПК работает:  

специальное предложение

0x800A0046 часто может появляться из-за неправильно настроенных параметров системы или из-за нарушений в реестре Windows. Эту ошибку относительно быстро и легко исправить, если использовать PC Repair, настроенную на решение всех распространенных проблем с реестром.

  • Название ошибки: 0x800A0046
  • Совместимо с: Windows 10, 11, 8, 7, Vista, XP
  • 0x800A0046 появляется и начинает нарушать окно активной программы;
  • 0x800A0046 появляется на экране;
  • Появляется сообщение ‘Обнаружена проблема, и Windows была выключена, чтобы предотвратить повреждение компьютера. Похоже, что проблема вызвана следующим файлом…’;
  • Компьютер пользователя перестает работать, выдавая ошибку 0x800A0046 при запуске программы;
  • Windows работает плохо, медленно реагируя на команды;
  • Компьютер пользователя часто зависает

0x800A0046 сообщения об ошибке могут появляться из-за засорения реестра Windows и ошибочных записей несуществующих программ, поскольку пользователь обычно неправильно удаляет программное обеспечение. Другими распространенными причинами являются неправильный ввод данных, отсутствие файлов, которые были случайно удалены из реестра, что вызывает проблемы в работе системы.

  1. 1. Скачать PC Repair.
  2. 2. Установить и запустить программу.
  3. 3. Нажмите Scan Now для обнаружения ошибок и различных отклонений от оптимального уровня.
  4. 4. Нажмите Repair All для устранения каждой проблемы.


Эта страница доступна на других языках:
English |
Deutsch |
Español |
Italiano |
Français |
Indonesia |
Nederlands |
Nynorsk |
Português |
Українська |
Türkçe |
Malay |
Dansk |
Polski |
Română |
Suomi |
Svenska |
Tiếng việt |
Čeština |
العربية |
ไทย |
日本語 |
简体中文 |
한국어

0 / 0 / 0

Регистрация: 05.12.2007

Сообщений: 7

1

05.12.2007, 12:57. Показов 2259. Ответов 6


Привет всем!
Вот какая ситуация — может кто-то сможет помочь..
Написан комонент ActiveX Dll (VB) который просто работает со строками
При регистрации его на моей машине и потом при попытке вызова из ASP страницы — все проходит просто замечательно

Set oKeyGen = CreateObject(‘syActiveX.SyKEYGEN’)

Вот, но при попытке запустить этот скрипт на главном веб сервере — почему-то вылетает с ошибкой
(subj) permission denied.
Права доступа на папку с данным скриптом у юзеров
IUSR_HostName и на моей машине и на главном сервере совпадают.
Прикол в том что все работало, потом когда поставили патч против NIMDA — перестало, но после каких-то шаманств (типа unregister dll,
delete it, register again and restart IIS) все заработало и вот вдруг
опять перестало работать

У кого-нибудь есть хоть какие-то мысли, в какую сторону рыть ?? Плиз, помогите..

Моя машина: Win2K Prof SP2, IIS 5.0
Main server: Win2K Server, IIS 5.0

Заранее спасибо
Oleg aka Nemo
ICQ # 18550104

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь

0

Sergik

06.12.2007, 09:46

2

посмотри NTFS-права на файл .dll (который содержит твой ActiveX), он должен быть доступен на исполнение IUSR_имякомпа

0 / 0 / 0

Регистрация: 05.12.2007

Сообщений: 7

06.12.2007, 09:56

 [ТС]

3

Стоят.. да только толку так и нету
причем — у меня на машине воообще для этогой файла у юзера IUSR_HostName стоит парво только на чтение — и все работает… а на этом контроллере домена — ну даже поставил Read and Execute — и все равно при запуске скрипта — та же ошибка, Permission denined 8-(((

0

Sergik

06.12.2007, 09:59

4

ну если права стоят, то попробуй server.createObject

0 / 0 / 0

Регистрация: 05.12.2007

Сообщений: 7

06.12.2007, 10:18

 [ТС]

5

Ага, попробовал
у меня на сервере все так же продолжает работать, как будто ничего не изменилось
а на главном сервере — другая ошибка

Server object, ASP 0178 (0x800A0005) The call to Server.CreateObject failed while checking permissions. Access is denied to this object.

блин, гдеж там эти пермишины ставяться ??? 8-((

0

Sergik

06.12.2007, 10:41

6

вот это уже поинтереснее, как я понял, у тебя не хватает прав на сам вызов Server.createobject
1) проверь (поставь) права для юзера IUSR на каталог /program files/common files/ и на /system32/inetsrv/
2) посмотри Event viewer, какая там ошибка пишется, если просят выполнить regsvr32 asp.dll, то выполни

0 / 0 / 0

Регистрация: 05.12.2007

Сообщений: 7

06.12.2007, 12:35

 [ТС]

7

Все, победил )

В MSDN нашел такую ошибку —

BUG: ASP Error 80070005 ‘Server.CreateObject Access’ When You Create a Visual Basic Component
Q278013

Каким -то образом у нас просто на сервере на вирутальном машине бейсика самого MSVBVM60.dll отсутстволвали права вообще для Everyone..
И как только я поставил туды разрешение для Everyone на чтение — то все сразу стало работать.. Ну не совсем сразу — там я отрегистрил свою длл-ку, остановил сервер, зарегестрил заново, и запустил сервер — но в конечном итоге все заработало )

всем спасибо ! ) Желаю чтобы все могли быстрее свои (и чужие ) ошибки находить!!

0

  • Remove From My Forums
  • Question

  • Hello All,

    I am very new to VBScript and am trying to work with an existing one that my organization has been using for a while. Unfortunately we’ve encountered the above error during a mass roll-out and cannot get the darn thing to run regardless of permissions of
    who is running it. The script is hit or miss as SOME workstations will allow it and others will not. We’re working in a Windows 7/XP mixed environment.

    The script is SUPPOSED to either DELETE or ADD a network printer for all users on a workstation. I know that an alternative is to use Group Policy in AD but that’s not an option here.

    Any ideas?

    Set objShell	= CreateObject("Wscript.Shell")
    Set objEnv	= objShell.Environment("Process")
    PrinterFlag	= 1
    
    '********************************************************************************
    '* Gather Information: Workstation Name, Printer Server, and Printer Name       *
    '********************************************************************************
    ADResult	= MsgBox("Click 'YES' to Add or 'NO' to Delete a printer.  Click 'CANCEL' to cancel the request", vbQuestion + vbyesNoCancel, "Add or Delete?")
    If ADResult	= vbYes    then AddOrDelete	= "/ga"
    If ADResult	= vbNo     then AddOrDelete	= "/gd"
    If ADResult	= vbCancel then Wscript.Quit Result
    
    ComputerName	= objEnv("ComputerName")
    ComputerName	= InputBox("Enter the Name of the Workstation you wish to Install the printer on.", "Workstation Name", ComputerName)
    Set objComputer = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!" & ComputerName & "rootcimv2")
    
    PrinterServer	= "PRINTER"
    PrinterServer	= InputBox("Enter the NAME of the Server that hosts the printer you wish to Install.", "Server Name", PrinterServer)
    Set objServer	= GetObject("winmgmts:" & "{impersonationLevel=impersonate}!" & PrinterServer & "rootcimv2")
    
    PrinterShare	= ""
    PrinterShare	= InputBox("Enter the NAME of the printer you wish to Install, (i.e. K0507).  The name is Case Sensitive.", "Printer Name", PrinterShare)
    PrinterString	= "rundll32 printui.dll,PrintUIEntry " & AddOrDelete & " /c" & ComputerName & " /n" & PrinterServer & "" & PrinterShare
    
    '********************************************************************************
    '* Start SPOOLER Service                                                        *
    '********************************************************************************
    Set objService	= objComputer.Get("Win32_Service='Spooler'")
    Result		= objService.StartService()
    
    If  ADResult	= vbYes then
    '   ********************************************************************************
    '   * Check to see if the printer exists                                           *
    '   ********************************************************************************
        Set colPrinters = objServer.ExecQuery("Select * from Win32_Printer Where Name = '" & PrinterShare & "'")
        For Each objPrinter in colPrinters
            If  objPrinter.Name = PrinterShare Then
    '           ********************************************************************************
    '           * Printer was Found                                                            *
    '           ********************************************************************************
                Result	= objShell.Run(PrinterString,,True)
                If Result 	<> 0 Then MsgBox "There was an error executing the command.  The return code is: " & Result
                DefResult	= MsgBox("Default Printer?  'YES' or 'NO'", vbQuestion + vbyesNo, "Default Printer?")
                If  DefResult = vbYes then
    '               ********************************************************************************
    '               * Get list of SID's for remote machine and Set their Default Printer           *
    '               ********************************************************************************
                    Set objReg	= GetObject("winmgmts:" & ComputerName & "rootdefault:StdRegProv")
                    objReg.EnumKey &H80000002, "SOFTWAREMicrosoftWindows NTCurrentVersionProfileList", colSIDs
                    For Each objSID In colSIDs
                        objReg.SetStringValue &H80000003, objSID & "SoftwareMicrosoftWindows NTCurrentVersionWindows", "Device", "" & PrinterServer & "" & PrinterShare & "," & "winspool,Ne00:"
                    Next
                End If
                MsgBox "Printer, " & PrinterServer & "" & PrinterShare & " was successfully INSTALLED on " & ComputerName & ".",vbOKOnly + vbInformation,"Printer INSTALLED"
                PrinterFlag	= 0
                Exit For
            End If
        Next
        If PrinterFlag <> 0 Then MsgBox "Printer, " & PrinterServer & "" & PrinterShare & " does not exist.",vbOKOnly + vbCritical,"Printer NOT Found"
    Else
    '   ********************************************************************************
    '   * Delete the Printer                                                           *
    '   ********************************************************************************
        Result = objShell.Run(PrinterString,,True)
        If Result <> 0 Then MsgBox "There was an error executing the command.  The return code is: " & Result
        MsgBox "Printer, " & PrinterServer & "" & PrinterShare & " was successfully DELETED on " & ComputerName & ".",vbOKOnly + vbInformation,"Printer DELETED"
    End If
    
    '********************************************************************************
    '* Stop SPOOLER Service                                                         *
    '********************************************************************************
    Result		= objService.StopService()
    
    '********************************************************************************
    '* Start SPOOLER Service                                                        *
    '********************************************************************************
    Result		= objService.StartService()
    
    Wscript.Quit 0
    

    • Moved by

      Monday, September 22, 2014 4:31 PM
      This is not «fix script for me» forum

  • Remove From My Forums
  • Question

  • Hello All,

    I am very new to VBScript and am trying to work with an existing one that my organization has been using for a while. Unfortunately we’ve encountered the above error during a mass roll-out and cannot get the darn thing to run regardless of permissions of
    who is running it. The script is hit or miss as SOME workstations will allow it and others will not. We’re working in a Windows 7/XP mixed environment.

    The script is SUPPOSED to either DELETE or ADD a network printer for all users on a workstation. I know that an alternative is to use Group Policy in AD but that’s not an option here.

    Any ideas?

    Set objShell	= CreateObject("Wscript.Shell")
    Set objEnv	= objShell.Environment("Process")
    PrinterFlag	= 1
    
    '********************************************************************************
    '* Gather Information: Workstation Name, Printer Server, and Printer Name       *
    '********************************************************************************
    ADResult	= MsgBox("Click 'YES' to Add or 'NO' to Delete a printer.  Click 'CANCEL' to cancel the request", vbQuestion + vbyesNoCancel, "Add or Delete?")
    If ADResult	= vbYes    then AddOrDelete	= "/ga"
    If ADResult	= vbNo     then AddOrDelete	= "/gd"
    If ADResult	= vbCancel then Wscript.Quit Result
    
    ComputerName	= objEnv("ComputerName")
    ComputerName	= InputBox("Enter the Name of the Workstation you wish to Install the printer on.", "Workstation Name", ComputerName)
    Set objComputer = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!" & ComputerName & "rootcimv2")
    
    PrinterServer	= "PRINTER"
    PrinterServer	= InputBox("Enter the NAME of the Server that hosts the printer you wish to Install.", "Server Name", PrinterServer)
    Set objServer	= GetObject("winmgmts:" & "{impersonationLevel=impersonate}!" & PrinterServer & "rootcimv2")
    
    PrinterShare	= ""
    PrinterShare	= InputBox("Enter the NAME of the printer you wish to Install, (i.e. K0507).  The name is Case Sensitive.", "Printer Name", PrinterShare)
    PrinterString	= "rundll32 printui.dll,PrintUIEntry " & AddOrDelete & " /c" & ComputerName & " /n" & PrinterServer & "" & PrinterShare
    
    '********************************************************************************
    '* Start SPOOLER Service                                                        *
    '********************************************************************************
    Set objService	= objComputer.Get("Win32_Service='Spooler'")
    Result		= objService.StartService()
    
    If  ADResult	= vbYes then
    '   ********************************************************************************
    '   * Check to see if the printer exists                                           *
    '   ********************************************************************************
        Set colPrinters = objServer.ExecQuery("Select * from Win32_Printer Where Name = '" & PrinterShare & "'")
        For Each objPrinter in colPrinters
            If  objPrinter.Name = PrinterShare Then
    '           ********************************************************************************
    '           * Printer was Found                                                            *
    '           ********************************************************************************
                Result	= objShell.Run(PrinterString,,True)
                If Result 	<> 0 Then MsgBox "There was an error executing the command.  The return code is: " & Result
                DefResult	= MsgBox("Default Printer?  'YES' or 'NO'", vbQuestion + vbyesNo, "Default Printer?")
                If  DefResult = vbYes then
    '               ********************************************************************************
    '               * Get list of SID's for remote machine and Set their Default Printer           *
    '               ********************************************************************************
                    Set objReg	= GetObject("winmgmts:" & ComputerName & "rootdefault:StdRegProv")
                    objReg.EnumKey &H80000002, "SOFTWAREMicrosoftWindows NTCurrentVersionProfileList", colSIDs
                    For Each objSID In colSIDs
                        objReg.SetStringValue &H80000003, objSID & "SoftwareMicrosoftWindows NTCurrentVersionWindows", "Device", "" & PrinterServer & "" & PrinterShare & "," & "winspool,Ne00:"
                    Next
                End If
                MsgBox "Printer, " & PrinterServer & "" & PrinterShare & " was successfully INSTALLED on " & ComputerName & ".",vbOKOnly + vbInformation,"Printer INSTALLED"
                PrinterFlag	= 0
                Exit For
            End If
        Next
        If PrinterFlag <> 0 Then MsgBox "Printer, " & PrinterServer & "" & PrinterShare & " does not exist.",vbOKOnly + vbCritical,"Printer NOT Found"
    Else
    '   ********************************************************************************
    '   * Delete the Printer                                                           *
    '   ********************************************************************************
        Result = objShell.Run(PrinterString,,True)
        If Result <> 0 Then MsgBox "There was an error executing the command.  The return code is: " & Result
        MsgBox "Printer, " & PrinterServer & "" & PrinterShare & " was successfully DELETED on " & ComputerName & ".",vbOKOnly + vbInformation,"Printer DELETED"
    End If
    
    '********************************************************************************
    '* Stop SPOOLER Service                                                         *
    '********************************************************************************
    Result		= objService.StopService()
    
    '********************************************************************************
    '* Start SPOOLER Service                                                        *
    '********************************************************************************
    Result		= objService.StartService()
    
    Wscript.Quit 0
    

    • Moved by

      Monday, September 22, 2014 4:31 PM
      This is not «fix script for me» forum

EDITED: Change the permissions of the folder.

  1. In windows explorer, navigate to the folder where the PST file is located.
  2. In the left pane of windows explorer, right click on the folder where the PST file is located, select «Properties».
  3. Select the «Security» tab
  4. Click the button «Edit» to change permissions.
  5. Click «Add»
  6. In the object names to select box, enter «everyone» (no quotes).
  7. Click «Check Names», everyone should become capitalized and underlined.
  8. Click «Ok»
  9. Select «Everyone» from the list of Groups or user names.
  10. In the «Permissions for Everyone» list, make sure «Read & Execute, List folder contents and Read, in the allow column are checked, click «Apply»
  11. Click Ok.

NOTE: By doing this, anyone who has access to this computer can access the folder. You might consider only adding your login to the computer to the list of Groups or usernames instead of Everyone. You may have to repeat the above steps on the PST file(s) in question.

Original Post:

I ran the script here, testing for various issues and it ran without problems. At this point I believe the issue is rights and permissions to either the source or destination folder (or the files you are backing up). By default, the user’s themselves don’t have access to Outlooks data files. You would need to add «read» permissions to the files in question (PST,OST, and so on) or the full folder.
In reality, just backing up the PST files isn’t enough to restore an Outlook configuration; you would need all of the files.
You can Try this:

'===================================================================
'Description: VBS script to backup your pst-files.
'
'Comment: Before executing the vbs-file, set the location of outlook
'         folder you want to backup and
'         the backup location (this can also be a network path).
'         See the URL below for more configuration instructions and
'         how to create a Scheduled Task for it.
'
' Original author : Robert Sparnaaij
' Modified:  Fred Kerber
' version: 1.1
' website: http://www.howto-outlook.com/downloads/backupscript.htm
' Changes:
'   Changed var types; changed to backup full folder and not just pst files.
'===================================================================
'===================BEGIN MODIFY====================================



'Define the folder location of Outlook's data files.
sOutlookDataPath = "C:UsersFKerber.CORPAppDataLocalMicrosoftOutlook"

'Define your backup location
sBackupPath = "E:Outlook Backup"

'Keep old backups? TRUE/FALSE
bKeepHistory = TRUE

'Maximum time in milliseconds for Outlook to close on its own
iDelay = 30000 'It is not recommended to set this below 8000

'Start Outlook again afterwards? TRUE/FALSE
bStart = True

'===================STOP MODIFY====================================
'Close Outlook
Call CloseOutlook(iDelay)

'Outlook is closed, so we can start the backup
Call BackupOutlook(sOutlookDataPath, sBackupPath, bKeepHistory)

'Open Outlook again when desired.
If bStart = TRUE Then
  Call OpenOutlook()
End If

Sub CloseOutlook(iDelay)
  Set objWMIService = GetObject("winmgmts:" &_
   {impersonationLevel= impersonate}!\.rootcimv2")

  'If Outlook is running, let it quit on its own.
   For Each oProcess in objWMIService.InstancesOf("Win32_Process")
     If StrComp(oProcess.Name,"OUTLOOK.EXE",vbTextCompare) = 0 Then
       Set objOutlook = CreateObject("Outlook.Application")
       objOutlook.Quit
       WScript.Sleep delay
       Exit For
     End If
   Next

  'Make sure Outlook is closed and otherwise force it.
  Set colProcessList = objWMIService.ExecQuery _
  ("Select * from Win32_Process Where Name = 'Outlook.exe'")
  For Each objProcess in colProcessList
    objProcess.Terminate()
  Next
  Set objWMIService = Nothing
  Set objOutlook = Nothing
  Set colProcessList = Nothing
End Sub

Sub BackupOutlook(sOutlook, sBackupPath, bKeepHistory)
  Set ofso = CreateObject("Scripting.FileSystemObject")

  If bKeepHistory = True Then
    sArchiveFolder = Year(Now) & "-" & Month(Now) & "-" & Day(Now)
    sBackupPath = sBackupPath & sArchiveFolder & ""
  Else
    For Each oFile In ofso.GetFolder(sBackupPath).Files
      ofso.DeleteFile oFile.Path, True
    Next
  End If

  If ofso.FolderExists(sBackupPath) = False Then
    ofso.CreateFolder sBackupPath
  End If

  For Each oFile In ofso.GetFolder(sOutlook).Files
    If ofso.FileExists(oFile.Path) Then
      ofso.CopyFile oFile.Path, sBackupPath, True
    End If
  Next
  Set ofso = Nothing
End Sub

Sub OpenOutlook()
  Set objShell = CreateObject("WScript.Shell")
  objShell.Run "Outlook.exe"
End Sub

Troubleshooting Code 800A0046 – Permission Denied

Code 800A0046 is a straightforward error to solve.  The secret is to read the Windows Script Error message carefully, then check the access control list to see who has permission to use the page, or use the device.

  • Introduction to Error Code 800A0046
  • Example 1: Script to map a printer
  • Example 2: Error 800A0046 When You Install Visual Studio
  • Permissions Analyzer Free Tool

  ‡

Introduction to Error 800A0046

Code 800A0046 is runtime error that is more likely to occur with an .ASP file than a .VBS.  You could be trying to connect to SQL, IIS or Exchange.  However, my example of is taken from printer permission problem sent in by Keith S.Code Error 800A0046 Permission Denied

The Symptoms You Get With Error 800A0046

When you get a pop-up message box.  Put on your detective hat, and pay close attention to the line number.  Error 800A0046 is a runtime error, so the problem is likely to outside your script, there could be something the matter with permissions on an application server.

The Cause of Error 800A0046

In the example above, Line 6: is the source of the error.  Char 1: is not always very useful as the error could be anywhere on the line, and WSH still blames char 1.

The cause of error 800A0046 is likely to be read-only permissions on some aspect of your server.  The Source: tells us that this is a runtime error, therefore the syntax is probably o.k.

The Solution

If its Exchange, then check the MailRoot and Pickup folder permissions.  If its IIS check the permissions to run scripts.  If its SQL check the execute permissions on the services.

The solution in the printer problem below would be to change the share permissions on the HP6L printer share.

Example 1: Script to map a printer

In this example, the user does not have permission to install the HP6L printer. Tell the truth, an example script is not that useful with Error 800A0046 as you cannot see the permissions!

‘  VBScript to create a local printer mapped to a network server
‘  Guy Thomas February 2010.
Option Explicit
Dim netPrinter
Set netPrinter = CreateObject(«WScript.Network»)
netPrinter.AddWindowsPrinterConnection «ServerPrnHP6L»

Guy Recommends: Permissions Analyzer – Free Active Directory ToolFree Permissions Analyzer for Active Directory

I like thePermissions Monitor because it enables me to see quickly WHO has permissions to do WHAT.  When you launch this tool it analyzes a users effective NTFS permissions for a specific file or folder, takes into account network share access, then displays the results in a nifty desktop dashboard!

Think of all the frustration that this free utility saves when you are troubleshooting authorization problems for users access to a resource.  Give this permissions monitor a try – it’s free!

Download Permissions Analyser – Free Active Directory Tool

Example 2: Error 800A0046 When You Install Visual Studio 6.0 (Also other Microsoft Products)

When you install Visual Studio you get the following message.

Permission denied: ‘CreateObject’

/Retail/include/global_siteconfig_lib.asp, line 194

Once again it’s a permissions problem on the Windowssystem32 folder.  Another idea is to try the useful Free Permissions Analyzer.

Example 3: ASP on IIS (Kindly sent in by a reader)

The way we got error 800A0046 was running ASP on IIS under Server 2003R2. Someone wrote a debug routine that did an OpenTextFile from a FileSystemObject; I think what happened was there were multiple simultaneous attempts to open that file.

Example 4: Constantly Writing to File

Dim FSO
Dim oFS
CONST F_ATTR_RONLY = 1
Set FSO = CreateObject(«Scripting.FileSystemObject»)
Set oFS = FSO.GetFile(«d:testo2test.png»)
IF oFS.Attributes AND F_ATTR_RONLY ‘check if bit 1 is set – read only
THEN
‘do nothing
ELSE
FSO.CopyFile «d:testo1test.png», «d:testo2»
END IF

The problem was: the file is written into the sourcelocation every 10 seconds. This is done by a Closed Source Software i have no way of editing. It seems like i get the error (line 11) every time i try to READ the sourcefile while it is being written/created.
Sadly the only solution i found was to run the script with
c:windowssystem32wscript.exe «c:{path to script}» //B
preventing the errornotice.

I have found no way to check if the file is currently being modified except for try and error.

See More Windows Update Error Codes 8004 Series

• Error 800A101A8 Object Required   •Error 800A0046   •Error 800A10AD   •Error 800A000D

• Error 80048820   •Error 800A0401   •Review of SolarWinds Permissions Monitor

• Error 80040E14   • Error 800A03EA   • Error 800A0408   • Error 800A03EE

Solarwinds Free WMI MonitorGuy Recommends: WMI Monitor and It’s Free!

Windows Management Instrumentation (WMI) is one of the hidden treasures of Microsoft operating systems.  Fortunately, SolarWinds have created the WMI Monitor so that you can examine these gems of performance information for free.  Take the guess work out of which WMI counters to use for applications like Microsoft Active Directory, SQL or Exchange Server.

Download your free copy of WMI Monitor


Do you need additional help?

  • For interpreting the WSH messages check Diagnose 800 errors.
  • For general advice try my 7 Troubleshooting techniques.
  • See master list of 0800 errors.
  • Codes beginning 08004…
  • Codes beginning 08005…
  • Codes beginning 08007…
  • Codes beginning 0800A…

Give something back?

Would you like to help others?  If you have a good example of this error, then please email me, I will publish it with a credit to you:

If you like this page then please share it with your friends


  • Remove From My Forums
  • Question

  • I’m so close to get my script to work with a user, but I need your help.
    I have a Terminal Server 2003 with policy restrictions. My users can’t even see how much megabytes they have in use. So I created the following script. It runs perfectly with an administrator account:


    Dim oFS, oFolder
    Dim total
    Dim message
    set oFS = WScript.CreateObject(«Scripting.FileSystemObject»)
    set oFolder1 = oFS.GetFolder(«\servershare$»)
    set oFolder2 = oFS.GetFolder(«\servershare1$»)
    set oFolder3 = oFS.GetFolder(«\servershare2$»)
    Wscript.Sleep 300
    total = oFolder1.Size + oFolder2.Size + oFolder3.Size
    message=MsgBox («Size: » & vbTab & oFolder1.Size /10241024 & «MB» & vbTab & » Path: » & vbTab & oFolder1.Path & Chr(10) _
    & «Size: » & vbTab & oFolder2.Size /10241024 & «MB» & vbTab & » Path: » & vbTab & oFolder2.Path & Chr(10) _
    & «Size: » & vbTab & oFolder3.Size /10241024 & «MB» & vbTab & » Path: » & vbTab & oFolder3.Path & Chr(10) _
    & «Total: » & vbTab & total /10241024 & «MB»,64,»megabytes in use»)

    The problem I’m facing is that I can’t distribute it to my users because when this script runs as an user I receive this error:
    Windows Script Host
    Script: pathandname.vbs
    Line: 9
    Char: 1
    Error: Permission denied
    Code: 800A0046
    Source: Microsoft VBScript runtime error

    I’ve checked the users permission on the servershare’s and they have Full Control.
    Also on the ACL on the script the user has Full Control.

    What else can I check?
    Is there a setting in some GPO that denies users to run a .vbs?

    Please let me know when you need more information to solve this.

    Cheers,
    Yuri

Answers

  • Are you sure the users have permissions to ALL files and directories on the shares?
    If there is as much as one file or folder to which the user hasn’t got at least «list contents» permission the script will fail with the above message.

    If you check the properties of the root of the share from explorer, first as an administrator and then as a user. Does it show the same amount of files/folders and the same size?
    A difference here would indicate that the user doesn’t have permissions to everything.

    • Marked as answer by

      Tuesday, September 1, 2009 9:14 AM

The Microsoft VBScript runtime error: Permission denied 800A0046, may faced while trying to install or uninstall a program or driver on your computer. The error 800A0046 is commonly caused because you ‘ll try to install a program on your computer without having administrative privileges or because you have enabled the User Account Control (UAC) on Windows 7 or Vista based computers. 

Permission denied 800A0046

In most cases the VBScript runtime error 800A0046, is occurred whenever you try to install the «Windows Installer Clean Up» utility, in order to remove a program from the system that you cannot uninstall by using the normal way (Programs and features).

This article contains two(2) methods to fix the «Permission denied 800A0046» Windows Script Host Error, on Windows 7 or Vista.

How to bypass the Windows Script Host «Permission Denied – Code 800A0046».

Before applying the methods below to resolve the VBScript Runtime 800A0046 error, first make sure that you have logged on as Administrator on your system,

Method 1: DISABLE User Account Control (UAC).

In order to disable the UAC (User Account Control):

1. Go to Start > Control Panel.
2. Open User Accounts.
3. Click at Change User Account Control settings.

VBScript Runtime error 800A0046

4, Move the slider on the left to Never notify and click OK.
5. Restart your computer.

disable uac - user account control

6. After restart, install (or uninstall) the program that caused the 800A0046 error.

Method 2: RUN the Installer (Setup.exe) as Administrator

In order to install a program as administrator:

1. Right click at the program (installer) that you ‘re trying to install and click Run as Administrator.

run as adminsitrator

That’s all folks! Did it work for you?

Please leave a comment in the comment section below or even better: like and share this blog post in the social networks to help spread the word about this solution.

If this article was useful for you, please consider supporting us by making a donation. Even $1 can a make a huge difference for us.

  • Ошибка разработчиков привела к созданию приложения figma
  • Ошибка разработчиков привела к созданию какого приложения
  • Ошибка разности средних формула
  • Ошибка разноски что значит
  • Ошибка размер файла rom не соответствует существующему размеру bios