問題タブ [vspackage]

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 投票する
2 に答える
5042 参照

visual-studio-2010 - 基になるファイルを変更した後、VS プロジェクトをプログラムで更新/再読み込みするにはどうすればよいですか?

私は Visual Studio パッケージを開発しており、別のファイルに依存するソリューション エクスプローラーのファイルを作成するコードをいくつか書きました。

つまり、コード ビハインド ファイルやデザイナー ファイルと同じ関係があり、プラス/マイナス アイコンで親ファイルの下にネストされて表示されます。

私が正常に記述したコードは、基になるプロジェクト ファイルを正しく変更しますが、プロジェクトを閉じて再度開くまで、変更はソリューション エクスプローラーに反映されません。

ソリューション エクスプローラーに変更がすぐに表示されるように、プロジェクトを更新または再読み込みするコードを探しています。

さらに詳しい情報...

依存ファイルを作成するメカニズムを示す sudo コードを次に示します。

プロジェクトをリロードするためにこれを追加しようとしましたが、何の効果もありません。

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

msbuild - Visual Studio 拡張機能を使用して MSBuild の「条件」属性を設定する

いくつかの異なる構成でビルドされた C# プロジェクトがあります。一部のソース ファイルは常に含める必要があり、一部は特定の構成でのみ含める必要があります。これまでのところ、ファイル全体でこれを行ってきましたが、#if ... #endifこれをより適切に行うための小さな拡張機能を作成したいと考えていました。

Conditionファイルのコンテキスト メニューに項目を追加する拡張機能を作成しましたが、プロジェクト ファイルの項目ノードに属性を設定する方法が見つかりません。

Propertiesインターフェイスのコレクションを見てきましたが、EnvDTE.ProjectItem有用なものは何も見当たりません (BuildAction を除いて... 私はそれに戻ります)。

次にIVsBuildPropertyStorage、アイテムを取得して呼び出してみSetItemAttribute()ました。これにより、プロジェクト ファイルに情報が追加されますが、次のような子要素として追加されます。

私が達成しようとしていたのは:

項目ノードではなく、上部近くのセクションにIVsBuildPropertyStorage.SetPropertyValue()同様の子要素を追加する but もあります。PropertyGroup

「プロジェクトのサブタイプ/フレーバー」を見てきましたが IVsBuildPropertyStorage、それは別の . それらは多くの複雑なことを実行できるように見えますが、この件に関するドキュメントは最小限で曖昧に見えます。

MSBuild アセンブリを使用してプロジェクト ファイルを直接読み込んで操作する方法を説明している投稿を見たことがありますが、Visual Studio を混乱させずに変更を失う可能性があるため、いつ安全にそれを行うことができるかわかりません。プロジェクト ファイルへの変更を検出します。

最後のアイデアとして、 と の間でBuildActionプロパティを操作することを考えましたが、たとえば、ユーザーが IDE で構成を切り替えるたびに同期を維持して、拡張機能を正しく維持するのは大変な作業になる可能性があるように思えます。CompileNone

この種の経験があり、私にアドバイスをくれる人はいますか?それとも、希望をあきらめて、#ifどこにでも手動でディレクティブを追加することに固執する必要がありますか?

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

visual-studio-2010 - VisualStudio2010拡張機能-クラスが特定の種類を拡張する場合のカスタムエディター

Visual Studio 2010の拡張機能としてGUIゲームデザイナーを作成しようとしています。プロジェクトおよびアイテムテンプレートで使用されるカスタムエディターを使用して、既存のXNAプロジェクトタイプの上にこの機能を構築することを検討しています。

カスタムエディターを調べて、特定のファイルタイプ用に作成する方法に関するさまざまなチュートリアルを見つけましたが、ControlまたはUserControlから拡張されたオブジェクトで現在発生しているように、クラスタイプに応じて実装することを望んでいました。デザイナーとコードを表示するオプション。

誰かが自分のエディターやクラスタイプのためにこの機能を模倣することに成功したチュートリアルやサンプルを見たことがありますか?

0 投票する
0 に答える
82 参照

visual-studio-2010 - プラグインを使用してオープン ソリューションの呼び出し関係を取得する方法

VS 2010 用の VSPackage を開発して、現在のソリューションで使用可能なすべてのメソッドを調査し、VS の組み込みの呼び出し階層機能と同じように、各メソッドの呼び出し関係を再構築しようとしています。

DTE オートメーション オブジェクトを使用して、ソリューションからそのプロジェクト、プロジェクトのクラス/タイプ、およびクラス メンバー (最も重要なのはそのメソッド) に移動することで、ソリューション内のタイプとそのメンバーの使用可能なすべての名前を取得することができましたが、呼び出し関係を再構築できません。役立つVS/VS SDKのサービスは見つかりませんでした。ヒントはありますか?

前もって感謝します!

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

vspackage - デプロイされた VS パッケージがパッケージ ロード アナライザーに表示されない

vspackage を開発しました。展開するには、MSDN ウォークスルー: VSPackage の展開の手順に従いました。チュートリアルに従った後、パッケージが Package Load Analyzer に表示されず、パッケージが初期化されません。

ステップを逃したと思いますが、どのステップかわかりません。MSDNが文書化したとおりに行いました。これは VS2008 用のパッケージで、VS 2010 でも使用したいのですが、まずは VS 2008 で動作させたいと考えています。

更新 MSDN で MSI ステップを使用しました。そして今、パッケージはパッケージ ロード アナライザーに表示されますが、問題は、ロード アナライザーでパッケージを分析した場合にのみパッケージが読み込まれることです。

0 投票する
4 に答える
642 参照

xaml - Graph# ライブラリ使用時の XamlParseException

VSPackageプロジェクトでGraph#ライブラリを使用しようとしていますが、残念ながら克服すべき障害がいくつかあります。これが私がしたことです:

次のすべての DLL をプロジェクト ルートのフォルダー /Libraries にコピーしました。

  • GraphSharp.dll
  • GraphSharp.Controls.dll
  • QuickGraph.dll
  • WPFExtensions.dll

すべてのビルド アクションは「コンテンツ」であり、出力へのコピー オプションは「コピーしない」に設定されています。

これらの参照をプロジェクトに追加しました。(参照を追加... -> 参照 -> /Library フォルダーから選択)

その後、以下のファイルを作成しました。ViewModel が UserControl の DataContext に設定され、UI がバインドされる "MethodGraph" が定義されていることがわかります。

XAML ファイル

分離コード

ビューモデル

幸いなことに、プロジェクト全体をコンパイルできますが、実行時に XAML で次のエラーがタグ (必要なタグのすぐ上) で発生します。

ファイルまたはアセンブリ 'GraphSharp.Controls, PublicKeyToken=null' またはその依存関係の 1 つを読み込めませんでした。システムはファイルを見つけることができません。

しかし、私はアセンブリを参照しました。それらは参照リストにリストされています。どうしたの?Visual Studio パッケージ(プラグイン)を作成するときに、アセンブリを通常とは別の方法で参照する必要があるのでしょうか?

編集: 別のプロジェクトで動作させようとしたので、通常の WPF アプリケーションをセットアップし、上記のすべてを実行しました。このソリューションでは、すべてが正常に機能します。それはとても奇妙です!

あなたが私を助けてくれることを願っています:-)よろしくお願いします!

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

wpf - Binding でメソッドまたは操作が実装されていないというエラーが発生しました

現在、最終的に呼び出し関係を視覚化できる Visual Studio プラグイン (VSPackage) を開発しています。それらを表現するために、グラフを管理するGraph#ライブラリを使用したい(エッジの重なりを避けるなど)。残念ながら、XAML で実行時に次のエラー メッセージが表示されます。

XamlParseException: メソッドまたは操作が実装されていません。

<graph:CallRelationGraphLayout Graph="{Binding RelationGraph}"/>タグにエラーが表示されます。

また、独自の頂点、エッジ、およびグラフ レイアウト クラスも作成しました。私のグラフは、最終的にメソッド (頂点) 間の呼び出し関係 (エッジ) を表す必要があります。

MethodVertex.cs

RelationEdge.cs

CallRelationGraphLayout.cs

CallRelationGraph.cs

ExplorationToolViewModelで、次のように RelationGraph を宣言しました。

また、次のエラーが表示されることもありますが、プロジェクトはコンパイルおよび実行されます。

GenericArguments[1]、'Biocoder.InteractiveExploration.Graph.RelationEdge'、'GraphSharp.Algorithms.Layout.ILayoutAlgorithm`3[TVertex,TEdge,TGraph]' は、タイプ 'TEdge' の制約に違反しています。

たぶんそれが問題の原因かもしれませんが、コンパイルして以来、これまでのところ無視し、このチュートリアルに対応して実行しました。

奇妙なことに、Graph# が提供する DLL を使用して、通常の WPF アプリケーションで実際に動作します。Graph-property を省略してもエラーは表示されないので、Graph プロパティに関係していると思います。これを解決する方法についてのヒントはありますか?

事前にどうもありがとうございました!

0 投票する
0 に答える
583 参照

visual-studio-2010 - Visual Studio ソリューションからすべてのインターフェイス タイプを取得する方法は?

Visual Studio の拡張機能を作成しようとしています。現在開いているソリューション

内のすべてのプロジェクトで見つかったすべてのインターフェイス タイプのリストを取得する必要があります。 これまでのところ、EnvDev 名前空間を使用してこれを実行しようとしました。

プロジェクトの .cs ファイルを解析せずにこれを行う方法はありますか?

ありがとう、

チャイ。

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

c# - vspackage で現在のソリューション構成を取得するには?

Visual Studio パッケージを作成していますが、開いているソリューションの名前と構成を知る必要があります。この情報を取得するにはどうすればよいですか?

ありがとう

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

c# - ビルド/リビルドのリアルタイム出力を取得するにはどうすればよいですか

devenv.exe を起動して他のソリューションをビルドしようとする Visual Studio パッケージを作成しています。ビルドの出力をリアルタイムで取得する必要があるため、ユーザーはビルドの進行状況 (出力) を確認できますが、その方法がわかりません。可能であれば。

私はそのように試しました:

そして、rebuildLog には出力があります。

誰でも助けることができますか?