問題タブ [vs-extensibility]

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 に答える
480 参照

c# - EnvDTE.Expression - DataMembers の内部名をプログラムで取得する

C# コード行があるとします。

var myList = 新しいリスト {1,2,3};

そして、「myList」をウォッチ ウィンドウに配置し、リストの最初の項目を下にドラッグすると、ウォッチ ウィンドウは、このデータ メンバーの内部名を持つ新しい行を作成します。この場合は次のようになります。

(新しい System.Collections.Generic.Mscorlib_CollectionDebugView(myList)).Items[0]

私の質問は、EnvDTE の Expression の DataMember からこの内部名をプログラムで取得する方法はありますか?

どうもありがとう!

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

.net - Net 4.0WpfUserControlライブラリ-VS2008パッケージツールウィンドウで参照できますか

WPF UserControlライブラリを使用して、ツールウィンドウで拡張性パッケージを構築するプロジェクトがあります。VS2008とVS2010のバージョンがあります。Net Frameworkを3.5以下に保つと、両方のバージョンでWpfを再利用するのは簡単です。WPFへの変換を依頼された既存のSilverlight4.0/Net4.0アプリケーションがあります。それは4.0の機能の多くを使用し、より少ないバージョンにそれを作り直すことは主要な仕事です。Net 4.0 Wpfを使用するためのテストを実行しましたが、VS2008パッケージが参照の認識を拒否します。

私の質問はこれです:VS2008パッケージでWpfNet 4.0を使用することは、何らかの方法で実行可能ですか?


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

visual-studio-2010 - VSPackageから構成ファイルをデプロイしますか?

ロギングをNLogに依存するVisualStudio拡張機能(CustomTool)があります。ツールのアセンブリがVSPackageを介してインストールされるのと同じディレクトリにNLog構成ファイルを展開したいと思います。

Vsixマニフェストを見ましたが、そのようなアーティファクトをデプロイする方法が見つからないようです。

そうする方法はありますか?

アップデート:

どうやら、メインのVSIXプロジェクトから参照されているプロジェクトのファイルに「出力にコピー」が設定されている場合は、ファイルがパッケージ化されます。ただし、「出力にコピー」が設定されていても、ファイルがメインのVSIXプロジェクトにある場合は、そうではありません。それを達成する方法はありますか?

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

xml - Intellisense は xs:key/xs:keyref をサポートしていますか?

次の XML フラグメントを検討してください。

およびそれを説明する xsd:

さて、これはほとんど機能します。リスト内の言語は一意であることが強制され、その「デフォルト」属性はリスト内の言語の 1 つを参照する必要があります。また、'id' フィールドと 'default' フィールドの両方で Intellisense をサポートしています。しかし、Intellisense が 'default' フィールドの xml ファイルのリストから言語のみを提案するようにしたいと思います。それ、どうやったら出来るの?

なぜこれが実行可能であると思うのですか? 上記の xsd ファイルを書き込むと、Intellisense は「xs:attribute」要素の「type」属性のドロップダウン リストに「mstns:availableCultures」を表示したためです。

私が知らないのは、これが xsd のみを使用して実行できるかどうか、または何らかの VS パッケージ/アドインを作成する必要があるかどうかです。

0 投票する
3 に答える
1735 参照

c# - Visual Studio 2010 の HWnd

VSIX 拡張機能から Visual Studio 2010 のトップ ウィンドウへの HWnd ポインターを取得する方法はありますか? (ウィンドウのタイトルを変更したい)。

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

c# - 別のスレッドから COM オブジェクト DTE2.Windows 列挙子に正しくアクセスする方法は?

System.Timers.TimermyTimerを使用する Visual Studio アドインがあります。
N 秒ごとに myTimer が起動し、次のコードを実行します。

これは別のスレッドから呼び出されるため、次のいずれかのエラーが発生することがあります。

  • 非管理対象サーバーで IEnumVARIANT の QI が失敗しました。
    foreach 行の EnvDTE.Windows.GetEnumerator()
    で (DTE2.Windows のウィンドウ ウィンドウ)

  • アプリケーションは、別のスレッド用にマーシャリングされたインターフェースを呼び出しました。(HRESULT からの例外: 0x8001010E (RPC_E_WRONG_THREAD)) TextDocument td = window.Document.Object("TextDocument") as TextDocument; 行
    の EnvDTE.Window.get_Document()で。

COM オブジェクトが関係しているため、別のスレッドでこの列挙子にアクセスする適切な方法は何ですか?
ある種の COM スレッド マーシャリングですか?
他の何か?

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

visual-studio-2008 - VSPackage例外

Visual Studioの拡張機能に取り組んでいますが、コードのバグが原因でIDEがクラッシュし、拡張機能をロードするたびに次のメッセージが表示されます。

クラッシュした瞬間、拡張機能の読み込みはすべて正常に機能していました。クラッシュは、アプリケーションのロジックにのみ関連しています。

拡張機能を再度ロードしてデバッグできるようにするにはどうすればよいですか?

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

c# - Visual Studio エディターからファイル パスを取得する

C# で記述された Visual Studio パッケージを開発しています。

アクティブなエディターの完全なパスをプログラムで取得するにはどうすればよいですか?

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

c# - VSPackage:「実際の」ソリューションが開かれていないときに選択したファイルを取得する方法

私はC# でVSPackageを開発しています。Visual Studio で単一のファイル (または複数のファイルが開かれている) のみの場合に、現在のファイルを取得する方法を知りたいです。

階層がある場合(実際のソリューションが開かれている場合)、すべて正常に機能します。しかし、Visual Studio で単一のファイルを開くと、現在の選択を取得できません。つまり、Visual Studio (ソリューションなし) とselect File-> Open->を開きFileます。

itemid、documentCookie、mkDocumentName などのいずれかを取得する必要があります。

私は次のことを試しました:

  • IVsMonitorSelection.GetCurrentSelection()-> 階層のないソリューション アイテム ID を常に取得します (Intpr.Zero)
  • IVsSelectionEvents-> 選択イベントをリッスンしようとしましたが、新しい itemId は常にソリューション itemid です
  • RunningDocumentTable->まあ、開いているファイルを列挙できるので、解決に近づいていますが、現在のファイルを特定する方法がわかりません。
0 投票する
2 に答える
346 参照

visual-studio-2010 - VisualStudioの貼り付けアクションをインターセプトする

貼り付けられているテキストを変換するために、Visual Studioの貼り付けイベントをインターセプトすることは可能ですか?スマートペーストを実行するための独自のコマンドを作成できることは知っていますが、ほとんどの人がこのコマンドをキーボードショートカットにマップするのは面倒です。その上、ほとんどの人はCtrl+Vに慣れています。そこに自分の製品を接続できる可能性はありますか?