Udostępnij za pośrednictwem


Rozwiązywanie problemów z błędami w rozwiązaniach pakietu Office

Można napotkać problemy podczas wykonywania następujących zadań podczas opracowywania rozwiązań pakietu Office w programie Visual Studio:

  • Tworzenie, uaktualnianie i otwieranie projektów

  • Przy użyciu projektantów

  • Pisanie kodu

  • Projekty budowlane

  • Debugowanie projektów

Tworzenie, uaktualnianie i otwieranie projektów

Podczas tworzenia lub otwierania projektach dla pakietu Office, można napotkać następujące błędy.

Nie można utworzyć projektu

Wystąpił błąd podczas próbowano utworzyć lub otworzyć projekt pakietu Office, ale Visual Studio nie ma wystarczających informacji, aby określić przyczynę.Spróbuj zamknąć projekt, zamykania programu Visual Studio, a następnie ponownie uruchomić.

Jeśli chcesz utworzyć projekt poziomie dokumentu, istnieje możliwość, że inny dokument o tej samej nazwie, co dokument w nowym projekcie jest już otwarty w programie Excel lub Word.Upewnij się, że wszystkie inne wystąpienia programu Word lub Excel, są zamknięte.

Właściwości formantów są utracone podczas tworzenia nowego projektu na podstawie dokumentu z istniejącego projektu

Jeśli tworzysz nowy projekt pakietu Office, na podstawie dokumentu z istniejącego projektu, właściwości dla wszystkich formantów, które są w dokumencie nie zostaną skopiowane do nowego projektu.Musisz ręcznie zresetować właściwości dla wszystkich formantów istniejące wcześniej.Alternatywnie można zachować właściwości formantu, tworząc kopię istniejącego projektu, zamiast tworzenia nowego projektu lub ładowania istniejącego projektu do nowego rozwiązania (w Projektancie) i kopiując i wklejając formantów z istniejącego dokumentu do nowego dokumentu.

Błędy podczas tworzenia projektu skoroszytu programu Excel oparty na podstawie istniejącego skoroszytu

Jeśli tworzysz nowy projekt skoroszyt programu Excel, oparty na podstawie istniejącego skoroszytu, może pojawić się kombinacją następujące błędy.

Za pomocą programu Excel: "Ostrzeżenie dotyczące prywatności: ten dokument zawiera makra, formanty ActiveX, informacje o pakietach rozszerzeń XML lub składniki sieci Web.Mogą one obejmować informacje osobiste, których nie można usunąć przez Inspektora dokumentów."

Z programu Visual Studio: "Projektant nie może załadować poprawnie."

Te błędy mogą wystąpić, że podczas próby utworzenia projekt, który opiera się na skoroszyt, który miał swoich informacji osobistych, które zostały usunięte za pomocą Inspektora dokumentów.Aby uniknąć tego błędu, wykonaj następujące czynności przed utworzeniem projektu.

  1. Otwórz skoroszyt w programie Excel.

  2. W programie Excel otwórz Centrum zaufania.

  3. Na Opcje prywatności kartę jasne Usuń informacje osobiste z pliku przy zapisywaniu pole wyboru.

  4. Zapisz skoroszyt, a następnie zamknij program Excel.

Nie można otworzyć projektu po migracji

Po pakietu Office, które rozwiązanie jest migrowany do pakietu Microsoft Office 2010 projekt nie można otworzyć na komputerze deweloperskim z tylko systemu Microsoft Office 2007, które są zainstalowane.Mogą być widoczne następujące błędy.

"Co najmniej jednego projektu w roztworze nie zostały poprawnie załadowane.Zobacz okno dane wyjściowe, aby uzyskać szczegółowe informacje."

"Nie można utworzyć projektu ponieważ aplikacja skojarzona z tego typu projektu nie jest zainstalowany na tym komputerze.Należy zainstalować aplikacji Microsoft Office, który jest skojarzony z tego typu projektu."

Aby rozwiązać ten problem, należy zmodyfikować plik .vbproj lub .csproj.Dla projektu programu Word, Zastąp HostPackage = "{763FDC83-64E5-4651-AC9B-28C4FEB985A1}" z HostPackage = "{6CE98B71-D55A-4305-87A8-0D6E368D9600}".Projekt programu Excel, można zastąpić w HostPackage = "{B284B16A-C42C-4438-BDCD-B72F4AC43CFB}" z HostPackage = "{825100CF-0BA7-47EA-A084-DCF3308DAF74}".Projekt programu Outlook, można zastąpić w HostPackage = "{D2B20FF5-A6E5-47E1-90E8-463C6860CB05}" z HostPackage = "{20A848B8-E01F-4801-962E-25DB0FF57389}".

Alternatywnie upewnij się, że projekty zmigrowanych są tylko otwarte na komputerach rozwoju z już zainstalowany pakiet Microsoft Office 2010.

Błędy w uaktualnionym dokumentu pakietu Office 2003 projekty zawierające formanty Windows Forms

Jeśli uaktualnienie projektu klasy w dokumencie pakietu Microsoft Office 2003, a dokument zawiera kontrolki Windows Forms, uaktualnionym projektu mógł kompilacji lub błędy wykonania.Aby uniknąć tego problemu, zainstalować Visual Studio 2005 Tools dla pakietu Office drugie wydanie w czasie wykonywania na komputerze deweloperskim przed przystąpieniem do uaktualniania projektu.Ta wersja środowiska wykonawczego jest dostępny jako pakiet redystrybucyjny w witrynie Microsoft Download Center w Microsoft Visual Studio 2005 Tools Runtime wydanie drugiego pakietu Office (VSTO 2005 SE) (x 86).

Po zakończeniu uaktualniania projektu, można odinstalować Visual Studio 2005 Tools dla pakietu Office drugie wydanie w czasie wykonywania z komputera rozwoju, jeśli nie jest on używany przez inne rozwiązania pakietu Office.

Przy użyciu projektantów

Podczas pracy z dokumentu, skoroszytu lub arkusza projektanta w projektów na poziomie dokumentu, można napotkać następujące błędy.

Projektant nie może poprawnie załadować

Visual Studio nie można otworzyć projektanta w następujących przypadkach:

  • Word lub Excel jest już otwarty, a polega na wyświetlaniu modalnego okna dialogowego.Aby otworzyć projektanta, sprawdź, czy program Excel lub Word ma modalne okno dialogowe Otwórz i zamknij otwarte modalne okna dialogowe.Jeśli są otwarte bez modalnych okien dialogowych, może być inna czynność, wymagane do przeprowadzenia programu Excel lub Word odpowiada.

  • Projekt jest aktualnie debugowany.Aby otworzyć projektanta, należy przerwać lub zakończyć debugowanie.

  • Dodatek programu Excel zainstalowanego na komputerze deweloperskim Wyświetla okno dialogowe przy uruchomieniu programu Excel.Aby utworzyć projekt poziomie dokumentu programu Excel, należy najpierw wyłączyć dodatek.

Formanty są wyświetlane jako czarne prostokąty w dokumencie lub arkuszu

Jeśli grupujesz formantów na dokument lub arkusz, Visual Studio nie rozpoznaje już formanty.Formanty zgrupowane są niedostępne w Właściwości okna i ich są wyświetlane jako czarne prostokąty w dokumencie lub arkuszu.Formanty należy rozgrupować, w celu przywrócenia ich działania.

Nie są widoczne w programie Visual Studio są formanty szablon programu Word

Jeśli szablon programu Word zostanie otwarty w programie Visual Studio designer, formanty w szablonie, które nie są równo z tekstem może nie być widoczne.To dlatego, Visual Studio otwiera szablony programu Word w Normalny widok.Aby wyświetlić formanty, kliknij View menu, wskaż Programu Microsoft Office Word widoku a następnie kliknij przycisk Układ wydruku.

Nie działają w Visual Studio Designer, Wstaw Clip Art polecenia

Gdy program Excel lub Word jest otwarty w projektancie programu Visual Studio, kliknięcie Clipart znajdującego się na Ilustracje nie można otworzyć kartę na wstążce Clipart okienko zadań.Aby dodać obiekt clipart, musi otworzyć kopię skoroszytu lub dokumentu, który znajduje się w folderze głównym projektu (nie kopię, która znajduje się w folderze \bin) niezależnego od Visual Studio, dodać obiekt clipart i następnie zapisać skoroszyt lub dokumentu.

Pisanie kodu

Podczas pisania kodu w projektach dla pakietu Office, można napotkać następujące błędy.

Niektóre zdarzenia obiektów pakietu Office nie są dostępne przy użyciu języka C#

W niektórych przypadkach może zostać wyświetlony następujący błąd kompilatora przy próbie dostępu do określonego zdarzenia wystąpienia programu pakietu Office, wpisz podstawowy zestaw międzyoperacyjny (PIA) w projekcie programu Visual C#.

"Niejednoznaczność między 'Microsoft.Office.Interop.Excel._Application.NewWorkbook' i 'Microsoft.Office.Interop.Excel.AppEvents_Event.NewWorkbook'"

Ten błąd oznacza, że próbujesz uzyskać dostęp zdarzenie, które ma taką samą nazwę jak inny właściwość lub metodę obiektu.Aby przejść do zdarzenia, musi rzutować obiektu do jego interfejsu zdarzenia.

Typy PIA pakietu Office, które mają zdarzenia zaimplementować dwa interfejsy: interfejsu core z wszystkich właściwości i metod i zdarzeń interfejs, który zawiera zdarzenia, które są udostępniane przez obiekt.Te interfejsy zdarzeń używają konwencji nazewnictwa Nazwa obiektuzdarzenian_Event, takich jak AppEvents_Event i ApplicationEvents2_Event.Jeśli nie masz dostępu zdarzenie, które spodziewasz się znaleźć na obiekcie, rzutować obiektu do jego interfejsu zdarzenia.

Na przykład Application obiekty mają NewWorkbook zdarzenia i NewWorkbook właściwość.Do obsługi NewWorkbook oddanych zdarzeń, Application do AppEvents_Event interfejsu.Poniższy przykład kodu demonstruje, jak to zrobić w projekcie na poziomie dokumentu dla programu Excel.

private void ThisWorkbook_Startup(object sender, System.EventArgs e)
{
    ((Excel.AppEvents_Event)this.Application).NewWorkbook += 
        new Excel.AppEvents_NewWorkbookEventHandler(ThisWorkbook_NewWorkbook);
}

void ThisWorkbook_NewWorkbook(Excel.Workbook Wb)
{
    // Perform some work here.
}

Aby uzyskać więcej informacji na temat interfejsów zdarzeń w PIAs pakietu Office, zobacz Overview of Classes and Interfaces in the Office Primary Interop Assemblies.

Nie można odwoływać się klas PIA pakietu Office w projektach działania z programem Program .NET Framework 4 lubProgram .NET Framework 4.5

W projektach działania z programem Program .NET Framework 4 lub Program .NET Framework 4.5, kod, który odwołuje się do klasy, która jest zdefiniowana w PIA pakietu Office nie skompiluje się domyślnie.Klasy w PIAs używają konwencji nazewnictwa Nazwa obiektuklasy, takie jak DocumentClass i WorkbookClass.Na przykład następujący kod z programu Word dodatek projektu nie zostanie skompilowany.

Dim document As Word.DocumentClass = Globals.ThisAddIn.Application.ActiveDocument
Word.DocumentClass document = (Word.DocumentClass) Globals.ThisAddIn.Application.ActiveDocument;

Ten kod powoduje następujące błędy kompilacji:

  • Języka Visual Basic: "odwołanie do klasy"Klasa dokumentu"nie jest dozwolone w przypadku Zgromadzenia połączonego, przy użyciu trybu nr PIA."

  • Visual C#: "międzyoperacyjny typu 'Microsoft.Office.Interop.Word.DocumentClass' nie mogą być osadzone.Użyć odpowiedni interfejs."

Aby rozwiązać ten problem, należy zmodyfikować kod, aby odwołać się za odpowiadający mu interfejs zamiast.Na przykład zamiast odniesienia DocumentClass obiektów, odwołać się za wystąpienie Document zamiast tego interfejsu.

Dim document As Word.Document = Globals.ThisAddIn.Application.ActiveDocument
Word.Document document = Globals.ThisAddIn.Application.ActiveDocument;

Projekty nastawione Program .NET Framework 4 lub Program .NET Framework 4.5, automatycznie Osadź wszystkie typy współdziałania z Office PIAs domyślnie.Ten błąd kompilacji występuje, ponieważ funkcja wbudowane typy międzyoperacyjny działa tylko z interfejsami, nie z klas.Aby uzyskać więcej informacji o interfejsach i klas w PIAs pakietu Office, zobacz Omówienie klas i interfejsów w podstawowe zestawy międzyoperacyjne pakietu Office.Aby uzyskać więcej informacji dotyczących funkcji wbudowane typy współdziałania w projektach dla pakietu Office, zobacz Projektowanie i tworzenie rozwiązań Office.

Odwołań do klas pakietu Office nie są rozpoznawane.

Na przykład niektóre klasy nazwy, Application, są w wielu obszarach nazw, takich jak Microsoft.Office.Interop.Word i System.Windows.Forms.Z tego powodu Imports/using instrukcji w górnej części szablonów projektu zawiera skrót kwalifikujących się stałą, na przykład:

Imports Word = Microsoft.Office.Interop.Word
using Word = Microsoft.Office.Interop.Word;

Tego użycia Imports/using instrukcja wymaga rozróżniania odwołań do klas pakietu Office z kwalifikatorem Word lub Excel, na przykład:

Dim doc As Word.Document
Word.Document doc;

Jeśli na przykład używasz zgłoszenie niekwalifikowanych, spowoduje wystąpienie błędów:

Dim doc As Document  ' Class is ambiguous
Document doc;  // Class is ambiguous

Mimo że przywozili obszaru nazw programu Word lub Excel i mieć dostęp do wszystkich klas znajdującym się w nim, musisz pełnej kwalifikacji wszystkie typy z Word lub Excel usunięcie wątpliwości obszaru nazw.

Projekty budowlane

Podczas konstruowania projektach dla pakietu Office, można napotkać następujące błędy.

Nie można zbudować projekt poziomie dokumentu, który jest oparty na dokumencie z ograniczonymi uprawnieniami

Visual Studio nie może zbudować projektów na poziomie dokumentu, jeśli dokument ma ograniczone uprawnienia.Jeśli projekt zawiera dokument, który ma ograniczone uprawnienia, nie skompiluje projektu i zostanie wyświetlony następujący komunikat w Lista błędów okna.

"Nie może dodać dostosowania."

Jeśli chcesz dołączyć dokument, który ma ograniczone uprawnienia, należy użyć nieograniczony dokumentu podczas rozwoju i budowania rozwiązania.Następnie należy zastosować ograniczone uprawnienia do dokumentu w lokalizacji, po opublikowaniu rozwiązanie.

Błędy kompilatora wystąpić po usunięciu formantu NamedRange

W przypadku usunięcia NamedRange kontroli z arkusza, który nie jest aktywny arkusz w Projektancie automatycznie wygenerowany kod mogą nie zostać usunięte z projektu i mogą wystąpić błędy kompilatora.Aby upewnić się, że kod jest usuwany, zawsze należy wybrać arkusz, który zawiera NamedRange celu nadania mu aktywnego arkusza przed usunięciem formantu.Jeśli nie jest usuwany automatycznie wygenerowany kod, gdy usuwany jest formant, może spowodować Projektant, aby usunąć kod uaktywniania arkusza, a następnie wprowadzając zmiany, tak, że arkusz staje się oznaczona jako zmodyfikowana.Odbuduj projekt, kod jest usuwany.

Debugowanie projektów

Podczas debugowania projektach dla pakietu Office, można napotkać następujące błędy.

Zostanie wyświetlony monit, aby odinstalować podczas publikowania i instalowania rozwiązania na komputerze deweloperskim

Podczas debugowania rozwiązanie pakietu Office, może pojawić się następujący błąd.

"Nie można zainstalować dostosowania, ponieważ inna wersja jest obecnie zainstalowany i nie można uaktualnić z tej lokalizacji."

Ten błąd wskazuje, że zostały wcześniej opublikowane i zainstalowane rozwiązanie Office na komputerze dewelopera.Aby zapobiec pojawianiu się komunikatu, przed debug roztwór odinstalować rozwiązanie z listy zainstalowanych programów na komputerze.Alternatywnie można utworzyć innego konta użytkownika na komputerze dewelopera, aby przetestować instalację opublikowanych roztworu.

Projektów poziomie dokumentów utworzonych w lokalizacjach sieciowych UNC nie zostanie uruchomiony z programu Visual Studio

Jeżeli tworzysz projekt na poziomie dokumentu dla programu Excel lub Word w lokalizacji sieciowej UNC, należy dodać lokalizację dokumentu do listy zaufanych lokalizacji w programie Excel lub Word.W przeciwnym razie dostosowanie nie zostanie załadowana, przy próbie uruchamiania lub debugowania projektu programu Visual Studio.Aby uzyskać więcej informacji o zaufanych lokalizacji, zobacz Udzielanie zaufania do dokumentów.

Wątki nie są prawidłowo zatrzymane po debugowania

Projektach dla pakietu Office w programie Visual Studio postępuj zgodnie z wątku, uniwersalna konwencja nazewnicza umożliwiająca debugera zamknąć program poprawnie.Jeśli tworzysz wątki w swoje rozwiązanie, należy nadać nazwę każdego wątku z prefiksem VSTA_ w celu zapewnienia, że te wątki są obsługiwane poprawnie podczas Zatrzymaj debugowanie.Na przykład, można ustawić Name właściwość wątek, który oczekuje na wystąpienie zdarzenia sieci do VSTA_NetworkListener.

Nie można uruchomić lub debugowania dowolne rozwiązanie pakietu Office na komputerze deweloperskim

Jeśli nie można uruchomić lub opracowanie projektu programu pakietu Office na komputerze programisty, może pojawić się następujący komunikat o błędzie.

"Dostosowywanie obiektu nie można załadować ponieważ nie można utworzyć domenę aplikacji."

Visual Studio traktuje syntezy jądrowej, moduł ładujący zestawu.NET Framework, przed załadowaniem rozwiązania biurowe w pamięci podręcznej zestawów.Upewnij się, że Visual Studio można zapisać do pamięci podręcznej syntezy jądrowej i spróbuj ponownie.Aby uzyskać więcej informacji, zobacz Kopiowanie zestawów w tle.

Błąd podczas zatrzymywania debugera w projekcie poziomie dokumentu po użyciu edytowania i kontynuowania

Jeśli używasz Edit- and -Continue, aby wprowadzić zmiany do kodu w projekcie na poziomie dokumentu dla programu Excel lub Word, podczas gdy projekt jest w trybie przerwania, może pojawić się okno dialogowe z następującym komunikatem o błędzie, jeśli następnie zatrzymania debugera.

"Zakończenie procesu w jego bieżącym stanie może spowodować niepożądane skutki, w tym również utratę danych i niestabilności systemu."

Czy wybrano opcję Tak lub nr w oknie dialogowym programu Visual Studio kończy proces programu Excel lub Word i zatrzyma debugera.Aby zatrzymać debugowanie projektu bez wyświetlania tego okna dialogowego, Zakończ pracę programu Excel lub Word bezpośrednio zamiast zatrzymywanie debugera w Visual Studio.

Zobacz też

Zadania

Rozwiązywanie problemów z zabezpieczeniami rozwiązań pakietu Office

Koncepcje

Rozwiązywanie problemów z wdrażaniem rozwiązań Office

Inne zasoby

Rozwiązywanie problemów z rozwiązaniami Office