Ошибка при попытке создать экземпляр Word или Excel из VB.net или VBA - PullRequest
0 голосов
/ 20 сентября 2019

ПРОБЛЕМА:

Я не могу создать экземпляр word или excel на моем компьютере, используя VB.net или VBA.Я пытался использовать CreateObject (VBA и VB.net) и «Новый Word.Document» (VB.net). У меня есть программы, которые раньше работали, но сейчас нет.Те же программы работают на других компьютерах, но не на моем.У меня эта проблема появилась ранее в этом году, и я попытался переустановить офис, в конце концов мне пришлось сбросить Windows, и это работало до сих пор.Кроме того, я полагаю, что эта проблема связана с другой проблемой, которая внезапно появилась у меня ранее, если я щелкну правой кнопкой мыши на текстовом документе и нажму «Преобразовать в PDF» (используя Acrobat DC), я получу сообщение об ошибке:

«Уровень безопасности установлен на Высокий. Запустите приложение, которое создало этот документ, в диалоговом окне« Предупреждение безопасности »установите флажок« Всегда доверять макросам из этого источника »и включите макросы, созданные Adobe Systems Inc.""

Я поднял этот вопрос, потому что оба эти вопроса появились вместе, и оба они связаны с Word. У меня есть ощущение, что есть какая-то проблема с dll, на которую я не могу разобраться. Исходя из ошибкисообщение от «Нового Word.Document» и некоторый поиск в Google, Кажется, что он работает, как будто система распознает, что Word установлен. Это имеет смысл, потому что я получаю те же ошибки, независимо от того, установлено Word или нет.

ВОПРОС:

Что может быть причиной ошибки, показанной ниже?

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ:

Windows 10 Office 2016 Visual Studio 2017

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

Imports Word = Microsoft.Office.Interop.Word

Public Class Form1
    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        Dim appWord As Word.Application
        try
            appWord = CreateObject("Word.Application")
            'appWord = New Word.Application
        Catch ex As Exception
            MsgBox(ex.Message & vbNewLine & vbNewLine & ex.StackTrace)            
        End Try
    End Sub
end Class

ОШИБКИ:

Я получаю ошибки, используя CreateObject и New Word.Application.Вот ошибки, которые я получаю.

ИСПОЛЬЗОВАНИЕ CREATEOBJECT

Сообщение: не удается создать компонент ActiveX.

StackTrace: at Microsoft.VisualBasic.Interaction.CreateObject (String ProgId, String ServerName) в WindowsApp1.Form1.Button3_Click (Отправитель объекта, EventArgs e) в C: \ Users \ sevans \ OneDrive \ Work \ Programs \ In Development \ WindowsApp1 \ WindowsApp1 \ Form1.vb: строка 7

с использованием вывода CreateObjectПоказывает исключение: «System.Exception» в Microsoft.VisualBasic.dll

ИСПОЛЬЗОВАНИЕ НОВОГО WORD.DOCUMENT

Сообщение: получение фабрики класса COM для компонента с CLSID {000209FF-0000-0000-C000-000000000046} не удалось из-за следующей ошибки: 8000ffff Катастрофический сбой (Исключение из HRESULT: 0x8000FFFF (E_UNEXPECTED)).

StackTrace: в System.RuntimeTypeHandle.CreateInstance (тип RuntimeType, тип Boolean, Boolean, no Boolean, нет, Boolean, public, Boolean, no, Boolean, public, Boolean, public, Boolean, no, Boolean, public, BooleancanBeCached, RuntimeMethodHandleInternal & ctor, Boolean & bNeedSecurityCheck) в System.RuntimeType.CreateInstanceSlow (логическое значение publicOnly, логическое значение skipCheckThis, логическое значение fillCache, StackCrawlMark & ​​stackMark) в System.RuntimeType.CreateInstanceDefaultCtor (логическое значение publicOnly, логический skipCheckThis, логическое значение типа SystemCare.CareLecateCareCateCareCateCareCateCateCareCateCareCateCareCateCareCateCareCateCoreCateCateCateCareCareCareCareChill)..CreateInstance (Type type) в WindowsApp1.Form1.Button3_Click (Отправитель объекта, EventArgs e) в C: \ Users \ sevans \ OneDrive \ Work \ Programs \ In разработки \ WindowsApp1 \ WindowsApp1 \ Form1.vb: строка 8

Вывод показывает: Возникло исключение: 'System.Runtime.InteropServices.COMException' в mscorlib.dll

ПРОБНЫЕ ССЫЛКИ:

Сборки \ Расширения Microsoft.Office.Interop.Word 15 Microsoft.Office.Interop.Word 14

COM-объекты Библиотека объектов Microsoft Word 16.0 Библиотека объектов Microsoft Office 16.0

...