2

非常に役立つ記事「Writing Your First Visual Studio Language Service」の指示​​に従って、ソフトウェア スタジオの内部スクリプト言語用に新しい Visual Studio 言語サービスを作成しました。文法はうまく機能し、いくつかの単純な goto ケースを実行して実行し、テキストの色付けを行いました。Irony GrammarExplorer と Visual Studio Experimental Hive の両方でテストを行いました。ビジュアル スタジオで通常どおり使用し、初期のテストとフィードバックのために他の数人のプログラマーに展開する準備ができていると感じています。

問題は、言語サービスのインストール方法がわからないことです。実験的なハイブで動作するこの素敵な小さな DLL がありますが、Visual Studio を起動するたびに実行する方法がわかりません。私はインターネット全体を見てきましたが、特定のステップがどこを見ても見過ごされていることがわかりました。多分私は盲目なのかもしれませんし、私が思っているよりずっと簡単なのかもしれませんが、誰かが私の言語サービスをインストールする方法について詳細な手順を教えてくれたら本当にありがたいです.

前もって感謝します!

4

2 に答える 2

5

ここで Tumbleweed バッジを取得した後、解決策を突き止めることができました。人々が役立つと思われる重要なビットがいくつかありました。

最初に PLK (パッケージ ロード キー) が必要です。ここで生成できます: http://msdn.microsoft.com/en-us/vstudio/cc655795.aspx 入力したすべての情報が正しく、dll のアセンブリに入力されていることを確認してください。

PLK は、ソリューションの rsx ファイルに (通常は項目 104 として) 追加し、コードの ProvideLoadKey 属性でその項目番号を一致させることによってインストールされます。

次の PLK のテストは少し面倒です。ヒントはここにあります: http://msdn.microsoft.com/en-us/library/bb164677%28v=VS.90%29.aspx最初から実験的なハイブで /noVSIP スイッチを使用することを強くお勧めします. /log を使用しても実際には役に立たないことがわかりました。パッケージをインストールし、まだ PLK の問題が発生している場合は、Package Load Analyzer を使用する方がはるかに優れています。

パッケージ ロード アナライザーからのより詳細な説明は、次のコマンド ラインで行うことができます: devenv /command tools.analyzepackage /analyzeargs {your GUID} analyzepkg.txt

満足して展開する準備ができたら、MSDN http://msdn.microsoft.com/en-us/library/bb458038%28VS.90%29.aspxにある必要以上に埋もれているように見えるチュートリアルがあります。

VS SDK の bin ディレクトリにある RegPkg ツールで私が見つけた興味深い点の 1 つは、それが存在する開発ソリューションではパッケージが正常に読み込まれるが、他のソリューションでは読み込まれないということでした。私が見逃していた devenv /setup を呼び出す追加の手順があるようです。これは、カスタム アクションを使用して、前の段落で提供したデプロイ チュートリアルで処理されます。

とにかく、これが私と同じプロセスを実行している誰かに役立つことを願っています.

于 2010-11-22T22:34:14.450 に答える
3

MSDN のチュートリアルで言及されていないことに、私が数時間かけて突っ込んだもう 1 つのこと: 64 ビット コンピューターに展開している場合、指定された手順は機能しません。かなり検索した後、このフォーラム スレッドの途中でそれを説明する投稿を見つけました

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 ファイルがあり、非常にうまく機能します。

これが他の誰かの時間を節約するのに役立つことを願っています!

(念のため、regpkg には「アセンブリ」モードではなく「コードベース」モードを使用しました。)

于 2011-08-04T22:44:53.377 に答える