Установка пользовательской службы визуальной студии

StackOverflow https://stackoverflow.com/questions/4160391

Вопрос

Я написал новую услугу Visual Studio Language для моего программного обеспечения для внутреннего языка сценариев студии, следуя инструкциям из очень полезной статьи Написание вашей первой Visual Studio Language Service. Отказ Я получил свою грамматику отлично, некоторые простые чехлы GoTo up и бега, и окрашивание текста. Я сделал тестирование как в иронии Grammarexplorer, так и в экспериментальном улей визуальной студии, и я чувствую, что я готов использовать его нормально в Visual Studio и развернуть его к нескольким другим программистам для некоторого раннего тестирования и обратной связи.

Проблема в том, что я не знаю, как установить языковой сервис. У меня есть эта милая маленькая DLL, которая работает в экспериментальном улей, но нет подсказки, как его запустить, когда я запускаю Visual Studio. Я посмотрел по всему Интернету и обнаружил, что конкретный шаг заглядывается повсюду, где я выгляжу. Может быть, я просто слепой, или гораздо проще, чем я думаю, что это будет, но я действительно был бы признателен, если кто-то может дать мне подробные шаги по установке моей службы языка.

Заранее спасибо!

Это было полезно?

Решение

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

Во-первых, не требуется плк (ключ нагрузки на пакет). Это может быть сгенерировано здесь: http://msdn.microsoft.com/en-us/vstudio/cc655795.aspx.Обязательно убедитесь, что вся информация, которую вы вводите, является правильной, и вводится в сборку для DLL.

PLK установлен путем добавления в файл RSX для решения, как правило, как элемент 104, а затем сопоставив этот номер элемента в атрибуте ProvideLoadkey в вашем коде.

Далее тестирование ПЛК - это немного хлопот. Советы можно найти здесь: http://msdn.microsoft.com/en-us/library/bb164677%28v=vs.90%29.aspx. Я настоятельно рекомендую сначала использовать переключатель / novsip с экспериментальным улей вправо с самого начала. Я нашел использование / log на самом деле не помогает, намного лучше использовать анализатор нагрузки на пакет, как только вы установили свой пакет и все еще имеете вопросы PLK.

Более подробное описание из пакета Analyzer можно сделать с помощью этой командной строки: DEVENV / Command Tools.analyzepackage / Аналиализируют {Ваш GUID} Analysepkg.txt

После того, как вы удовлетворены и готов к развертыванию, есть учебник, который казался более похоронен, чем он должен закончиться на MSDN http://msdn.microsoft.com/en-us/library/bb458038%28vs.90%29.aspx.

Одна вещь, которую я нашел, было любопытно с помощью инструмента RegPKG, найденным в каталоге VS SDK Bin, заключался в том, что для моего пакета будет загрузка штрафа в растворе разработки, но не загружается в другие решения. Похоже, что есть дополнительный шаг для вызова Devenv / Setup, который мне не хватает, и это позаботится о в развертывании, которое я предусматривал в предыдущем абзаце с помощью пользовательских действий.

Во всяком случае, я надеюсь, что это поможет кому-то пройти через тот же процесс, что и я.

Другие советы

Еще одна вещь, которую я провел пару часов, наталкиваясь на то, что учебник MSDN не упоминается: если вы развертываете 64-битный компьютер, инструкции, указанные, не будут работать. После довольно и поисчения я наткнулся на публикацию на полпути на этот форум, который объясняет это: http://social.msdn.microsoft.com/forums/en/vsx/thrad/989C5Bea-3DD0-4E60-891A-F8F006E1B9A2.

Учебное пособие MSDN говорит, чтобы установить ваши ключи реестра здесь и Regpkg.exe генерирует здесь ключи реестра:

HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\9.0\...

Но на 64-битных компьютерах Visual Studio загружает свои настройки не оттуда, а отсюда:

HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\VisualStudio\9.0\...

Обратите внимание, что в нем «WOW6432Node» там; Ключи реестра в противном случае идентичны, но для этого дополнительного «WOW6432NODE» на пути. Таким образом, на 64-битных машинах вам приберем вам пример, вам понадобится использовать эти расширенные ключевые ключи реестра или вы можете установить гибридную 32/64-битное .dll к обоим наборам ключей реестра без больного эффекта. У меня есть файл .reg, который устанавливает как наборы клавиш, и он работает очень красиво.

Надеюсь, это поможет сэкономить кому-то еще некоторое время!

(Для того, что это стоит, я использовал режим «CodeBase» для Regpkg, а не в режиме «сборки».)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top