7

hej, w stosunku do this stackoverflow question, w jaki sposób chciałbym przejść do tworzenia własnych wtyczek Visual Studio 2008.Visual Studio 2008 Plug-in/dodatek rozwojowy - Pierwsze kroki

Sprawdziłem program Visual Studio Developer Center w witrynie MSDN, ale ilość informacji jest przytłaczająca. Istnieje wiele rodzajów projektów i nie wiem nawet, od czego zacząć.

Gdzie powinienem zacząć szukać jeśli chcę coś napisać, która spełnia następujące wymagania:

  1. Plug-in, który działa jak „usługi” w Visual Studio i jest w stanie odpytywać wizualna Studio zawiera informacje i obsługuje zdarzenia Visual Studio.
  2. Informacje, które chciałbym uzyskać z VS, to takie rzeczy, jakie projekty są obecnie otwarte, kto je otwiera i inne informacje dotyczące rozwiązania/pliku projektu.
  3. Wydarzenia, które chciałbym obsłużyć, to: otwieranie/zamykanie/edycja/tworzenie/usuwanie rozwiązań/projektów/pojedynczych plików.
  4. Chciałbym również być w stanie obsłużyć dowolną interakcję z VS na podstawie rozwiązania. Chciałbym więc obsługiwać dowolne interakcje z plikami, nawet edycję kodu, ale także inne interakcje, np. Z menu lub sam IDE.

Oprócz tego chciałbym również móc przechowywać dane gdzieś. Gdzie to zazwyczaj się dzieje? Czy mogę dodać metadane do pliku rozwiązania? Czy też ma sens zapisanie tych informacji w małej lokalnej instancji bazy danych, która jest w jakiś sposób dołączona do rozwiązania ..?

Po prostu potrzebuję push w dobrym kierunku, jest to możliwe? Na jakiej części Centrum programistów Visual Studio powinienem się skupić? Jakie interfejsy API muszę sprawdzić?

Pozdrawiam!

+0

Jak ironicznie ... Pracuję nad czymś, co dokładnie to - śledzić, ile czasu spędzasz pracując nad danym rozwiązaniem/plikiem w VS. Jak leci? –

+0

@dave: fajnie, właściwie nawet nie zaczęłam ... chociaż byłbym bardzo zainteresowany tym, jak to robisz. Czy będzie to projekt Open Source? Jeśli nie, chciałbyś poznać podejścia, które podejmujesz na wyższym poziomie. Twoje zdrowie! – andy

+0

@andy: Właśnie skończyłem prototyp, wciąż decydując, czy zrobić to z open source. W każdym razie wkrótce będę szukał beta testerów ... :) –

Odpowiedz

6

Dodatek może zrobić większość tego. W VS2008 jest szablon do tworzenia podstawowego dodatku.

Mam dodatek, który można pobrać za haki do zdarzeń związanych z ładowaniem rozwiązania/projektu itp. - jest bezpłatny i zawiera kod źródłowy (http://www.huagati.com/projectloader/download/huagatiprojectloader.zip). Ten konkretny dodatek wykrywa, kiedy projekty/rozwiązania są ładowane i wstępnie ładuje odnośniki zespołów, aby obejść błąd CLR, który może spowodować awarię VS2008. W każdym razie jego kod źródłowy pokazuje, jak wykryć niektóre zdarzenia, których szukasz.

Oprócz tego, ostatecznym źródłem informacji o rozwoju dodatków i wszystkich tych drobiazgów są blog Carlosa Quintero (http://msmvps.com/blogs/carlosq/) oraz seria artykułów "howto" na jego stronie internetowej (http://www.mztools.com/resources_vsnet_addins.aspx).

Blog Craiga Skibo (http://blogs.msdn.com/craigskibo/) ma również kilka przydatnych wskazówek.

+0

@kristoferA: hej kristofer, świetny, dzięki za kod źródłowy, bardzo doceniany – andy

2
+1

fajny, dzięki Saunders, nie jestem zbyt dobry w nauce z książek, po prostu nie klika ze mną, nazwij to dysleksją, ADD lub .. .lazyness ... na pewno nie. Muszę to wypróbować lub porozmawiać z kimś o tym. Jeśli jednak utknę, na pewno to sprawdzę. – andy

+0

Będziesz mieć problem w tym obszarze. Jest niezwykle bogaty, ale nie czysty. Następnym krokiem będą próbki w SDK VS2008, ale powodzenia w nauce tego obszaru bez jakiejś struktury. BTW, jestem ostatnią osobą na Ziemi, która może nazwać to lenistwo. –