問題タブ [visual-studio-package]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
325 参照

visual-studio-2010 - IClassifierProvider が開始されていません

Visual Studio のビルド出力に色を追加しようとしています。だから私は IClassifierProvider の分類子を取得しようとしています。しかし、 GetClassifier() は呼び出されていません。何が問題なのですか?ソースコードのサンプルを以下に示します。VSColorOutput 拡張機能を使用しようとすると、開始されます。私が欠けているものを教えてください。

Vsix マニフェスト

0 投票する
1 に答える
1581 参照

visual-studio - Visual Studio 2012 パッケージ プロジェクトを使用した MsBuild

Visual Studio 2012 Package Project ( VS2012 SDKから)で .NET ソリューションを作成しました。Visual Studioを使用して、このプロジェクトを(ソリューション全体とともに)「デバッグ」構成モードで、「任意のCPU」プラットフォームで正常にコンパイルおよび実行しました。しかし、MsBuildを使用してコマンド ラインでソリューションをビルドしようとすると、エラーが発生します。

指示:

エラー:

エラー : VS SDK のインストールが見つかりません。
エラー MSB4018: "FindVsSDKInstallation" タスクが予期せず失敗しました。
エラー MSB4018: System.ArgumentNullException: 値を null にすることはできません。
エラー MSB4018: パラメータ名: path1
エラー MSB4018: System.IO.Path.Combine(String pat h1, String path2) で
エラー MSB4028: "FindVsSDKInstallation" タスクの出力を "IncludesPath" パラメータから取得できませんでした。値を null にすることはできません。
エラー MSB4028: パラメータ名: path1

すべてのアクティビティは、VS2012 と SDK がインストールされたローカルの Windows 7 で実行されます。

Web で解決策を探していたところ、FindVsSDKInstallation タスクがビルド ボックスで失敗するというトピックが見つかりました。プロセスが 32 ビットであるため、このようなプロジェクトは「x86」プラットフォーム用にコンパイルする必要があると言われています。devenv.exeそこで、Platform Targetプロパティを Project Properties から"x86" ( "Debug"モード用) に変更します。結果は同じです。プロジェクトは VS では正常にビルドされますが、.NET ではビルドされませんMsBuild

VS2012 パッケージ プロジェクトが VS を使用して適切にビルドされるのにMsBuild失敗するのはなぜですか? MsBuild正常にビルドするにはどのように実行すればよいですか?

0 投票する
2 に答える
462 参照

c# - Visual Studio パッケージ: テキスト行マーカーにツールチップを表示することは可能ですか?

JSLint.NET での「波線」テキスト行マーカーの実装は、次の図に示すように非常に単純です。

波線

ただし、GetTipText メソッドを使用して IVsTextMarkerClient を実装しても、ツールヒントは表示されません。マウスをマーカーの上に置いても、GetTipText メソッドは呼び出されません。

グリフ タイプ (MARKERTYPE.MARKER_SHORTCUT など) に切り替えると、ツールチップが余白にうまく表示されます。

グリフ

ツールチップをインライン テキスト マーカーの本文に表示するためのトリックはありますか?

実装のソース コードは、次の SetMarker メソッドで入手できます。

https://jslintnet.codeplex.com/SourceControl/changeset/view/f27a513c14bbfbf787ddb66485ae6c4404dc8352#source/JSLintNet.VS2012/JSLintErrorTask.cs

0 投票する
2 に答える
2301 参照

c# - VS パッケージ プロジェクトで DTE オブジェクト インスタンスを取得するにはどうすればよいですか?

VS パッケージ プロジェクトで DTE インスタンスを取得するにはどうすればよいですか? applicationメソッドの引数として渡されているので、アドインプロジェクトでは簡単onConnectionですが、パッケージで取得する方法が不明です。

0 投票する
2 に答える
6181 参照

visual-studio - Visual Studio 2012 から拡張機能を完全に削除するには?

Visual Studio 2012 の次の動作に気付きました: (SDK から) VS2012 パッケージ プロジェクトを作成します。コンパイルして実行すると、実験的な VS インスタンスが起動されるので、実装したパッケージをテストできます。しかし、( を使用してTools -> Extensions and Updates -> Uninstall) 実験的な VS インスタンスからパッケージをアンインストールし、パッケージを再コンパイルして再実行しようとすると、出力とエラー リストにエラーが表示されずにコンパイル エラーが発生します。したがって、開発中のパッケージを再度起動することはできません。この問題は、新しく作成されたすべての VS2012 パッケージ プロジェクトで再現できます。

要約すると、以前にアンインストールしたため、実験的な VS インスタンスでパッケージを実行できません。パッケージのメタデータ キャッシュの問題のようです。この問題を解決するにはどうすればよいですか?

編集:

この問題を再現する手順:

  1. 新しい Visual Studio 2012 パッケージ プロジェクトを作成します (VS2012 SDK をインストールする必要があります)。
  2. プロジェクトをコンパイルして実行します。VS Experimental インスタンスを起動する必要があります。
  3. VS Experimental インスタンスで、 に移動しTools -> Extensions and Updates、作成したばかりの拡張機能をアンインストールします。
  4. VS Experimental インスタンスを閉じます。
  5. Package プロジェクトを再度コンパイルして実行してください。コンパイルまたは起動エラーが発生するはずですが、出力にもエラー リストにも情報がありません。

現時点では、このパッケージ プロジェクトで VS Experimental インスタンスを再度実行することはできません。

0 投票する
1 に答える
271 参照

c# - Visual Studio IDE でプロパティと呼ばれるものにアクセスできるクラスはどれですか?

C++ プロジェクトを対象とする拡張機能に取り組んでいます。プロジェクトの IncludePaths のリストを取得する必要があります。VS IDE では、メニュー -> プロジェクト -> プロパティ -> 構成プロパティ -> C++ -> 一般 -> 追加のインクルード ディレクトリです。それが、拡張機能でプログラムによって取得する必要があるものです。

対応する VCProject インスタンスがあり、VCConfiguration インスタンスもあります。オートメーション モデルの概要チャートから判断すると、プロジェクトと構成の両方に一連のプロパティがあります。ただし、利用できないようです。実行時に VCConfiguration および VCProject オブジェクトの内容を調べた場合でも、VCConfiguration クラスにも VCProject クラスにもプロパティ コレクションはありません。

MSDN ドキュメントも洞察を提供しません。VCConfiguration インターフェイスにはプロパティ PropertySheets がありますが、実行時にデバッガーを使用して調べたところ、必要なものではないと判断しました。

PSコマンドラインプロパティの値を取得できた場合(プロジェクト->プロパティ->構成プロパティ-> C++->コマンドライン)、指定されたプロジェクトに対して引数コンパイラのリストが呼び出されます-それも私にとっては問題ありません、その文字列を解析して、すべてのインクルード パスを取得できます。

0 投票する
1 に答える
370 参照

c# - ツール ウィンドウを既存の VS 拡張パッケージに追加する - FindToolWindow が失敗する

ツール ウィンドウのない VS パッケージがあり、最初のツール ウィンドウを追加したいと考えています。これは私がやったことです:

  1. ToolWindowPane から派生した空のクラスを作成しました。
  2. このクラスに Guid 属性を追加しました。Visual Studio 組み込みツールを使用して新しい GUID を生成しました。
  3. メイン パッケージ クラスに 2 つの属性を追加:
    [ProvideToolWindow(typeof(MainToolWindow))]
    および
    ([ProvideToolWindowVisibility(typeof(MainToolWindow), VSConstants.UICONTEXT.SolutionExists_string)]

  4. 呼ばれたToolWindowPane MyWindow = this.FindToolWindow(typeof(MainToolWindow), 0, true);

これにより、例外が発生します。

壊滅的な障害 (HRESULT からの例外: 0x8000FFFF (E_UNEXPECTED))

私は何を取りこぼしたか?