問題タブ [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.
c# - EnvDTE.Expression - DataMembers の内部名をプログラムで取得する
C# コード行があるとします。
var myList = 新しいリスト {1,2,3};
そして、「myList」をウォッチ ウィンドウに配置し、リストの最初の項目を下にドラッグすると、ウォッチ ウィンドウは、このデータ メンバーの内部名を持つ新しい行を作成します。この場合は次のようになります。
(新しい System.Collections.Generic.Mscorlib_CollectionDebugView(myList)).Items[0]
私の質問は、EnvDTE の Expression の DataMember からこの内部名をプログラムで取得する方法はありますか?
どうもありがとう!
.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を使用することは、何らかの方法で実行可能ですか?
visual-studio-2010 - VSPackageから構成ファイルをデプロイしますか?
ロギングをNLogに依存するVisualStudio拡張機能(CustomTool)があります。ツールのアセンブリがVSPackageを介してインストールされるのと同じディレクトリにNLog構成ファイルを展開したいと思います。
Vsixマニフェストを見ましたが、そのようなアーティファクトをデプロイする方法が見つからないようです。
そうする方法はありますか?
アップデート:
どうやら、メインのVSIXプロジェクトから参照されているプロジェクトのファイルに「出力にコピー」が設定されている場合は、ファイルがパッケージ化されます。ただし、「出力にコピー」が設定されていても、ファイルがメインのVSIXプロジェクトにある場合は、そうではありません。それを達成する方法はありますか?
xml - Intellisense は xs:key/xs:keyref をサポートしていますか?
次の XML フラグメントを検討してください。
およびそれを説明する xsd:
さて、これはほとんど機能します。リスト内の言語は一意であることが強制され、その「デフォルト」属性はリスト内の言語の 1 つを参照する必要があります。また、'id' フィールドと 'default' フィールドの両方で Intellisense をサポートしています。しかし、Intellisense が 'default' フィールドの xml ファイルのリストから言語のみを提案するようにしたいと思います。それ、どうやったら出来るの?
なぜこれが実行可能であると思うのですか? 上記の xsd ファイルを書き込むと、Intellisense は「xs:attribute」要素の「type」属性のドロップダウン リストに「mstns:availableCultures」を表示したためです。
私が知らないのは、これが xsd のみを使用して実行できるかどうか、または何らかの VS パッケージ/アドインを作成する必要があるかどうかです。
c# - Visual Studio 2010 の HWnd
VSIX 拡張機能から Visual Studio 2010 のトップ ウィンドウへの HWnd ポインターを取得する方法はありますか? (ウィンドウのタイトルを変更したい)。
c# - 別のスレッドから COM オブジェクト DTE2.Windows 列挙子に正しくアクセスする方法は?
System.Timers.Timer
myTimerを使用する 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 スレッド マーシャリングですか?
他の何か?
visual-studio-2008 - VSPackage例外
Visual Studioの拡張機能に取り組んでいますが、コードのバグが原因でIDEがクラッシュし、拡張機能をロードするたびに次のメッセージが表示されます。
クラッシュした瞬間、拡張機能の読み込みはすべて正常に機能していました。クラッシュは、アプリケーションのロジックにのみ関連しています。
拡張機能を再度ロードしてデバッグできるようにするにはどうすればよいですか?
c# - Visual Studio エディターからファイル パスを取得する
C# で記述された Visual Studio パッケージを開発しています。
アクティブなエディターの完全なパスをプログラムで取得するにはどうすればよいですか?
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
->まあ、開いているファイルを列挙できるので、解決に近づいていますが、現在のファイルを特定する方法がわかりません。
visual-studio-2010 - VisualStudioの貼り付けアクションをインターセプトする
貼り付けられているテキストを変換するために、Visual Studioの貼り付けイベントをインターセプトすることは可能ですか?スマートペーストを実行するための独自のコマンドを作成できることは知っていますが、ほとんどの人がこのコマンドをキーボードショートカットにマップするのは面倒です。その上、ほとんどの人はCtrl+Vに慣れています。そこに自分の製品を接続できる可能性はありますか?