Microsoftは
ついに Visual Studio 2012でマクロを廃止しました。VS2010ベータ版で試みが行われましたが、inするユーザーの圧力の下で、マクロはリリースに戻りました。 VS 2012では、それらは完全に消えました。 Microsoftにはこれには十分な理由があると思いますが、このトピックに無関心でないユーザーにとっては、喜びとは反対の感情を引き起こしました。 拡張機能を作成せずに、ある種のマクロをオンザフライで(かなり頻繁に1回)スローする機能は、非常に価値がありました。 また、過去のスタジオで多くの有用なマクロを作成した人にとって、VisualStudio 2012への移行は非常に問題があります。
タスク :VS 2012でホットキーとメニューの両方で使用できるように、マクロを含むファイルをアドインに転送します。
問題を解決した結果、マクロを使用してファイルを追加し、コンパイルしてMy Documents \ VisualStudio 2012 \ AddInsフォルダーにコピーするだけで十分なプロジェクトテンプレートが表示されました。
プロジェクト
-Dropboxをダウンロードします。
モジュール転送
基本設定。 モジュール「 g.vb 」
- メニューに表示する必要があるコマンドのリストを指定するには、 cmdIconsコレクションに入力します。
形式:{'' Module_name。Procedure_name ''、Microsoft Officeツールバーのアイコン番号(FaceID) }。 例:
Friend cmdIcons As Dictionary(Of String, Integer) = New Dictionary(Of String, Integer) From { ... , {"Sample.Test", 917} }
このリンクでアイコンを選択できます
- MyMenuName変数は、 cmdIconsからのコマンドのリストが表示されるメニューを示します 。
現時点では、メインメニューの既存のリストから名前を指定する価値があります。 別の名前を指定すると、最初の開始時のみ表示され、その後はリストとともに消えます。 誰かがこの問題を解決するのを手伝ってくれたら嬉しいです。
- 必要に応じて、ドキュメントイベントを入力します。
Private Sub document_Saved(ByVal d As EnvDTE.Document) Handles docEvents.DocumentSaved
最終段階
- プロジェクトをコンパイルし、 binフォルダーを開き、ファイルMyAddin.AddIn 、 MyAddin.dllをコピーします
My Documents \ Visual Studio 2012 \ AddInsで 。 - プロジェクトの名前が変更されている場合は、ファイルMyAddin.AddInの名前も変更し、新しい名前に従って内部を変更する必要があります。
- VisualStudioを再起動します。
- [ ツール]、[オプション]、[環境]、[キーボード]の順に移動し、検索にMyAddin (または名前を変更したもの)を入力して、ホットキーを割り当てます。
注釈
- マクロでは、IDEは同じ名前のグローバル変数であるDTE変数を介してアクセスされ、対応するリンクはg.vbモジュールで既に作成されているため、マクロを変更する必要はありません。
- 便宜上、 Selectionプロパティ( ドキュメント内の選択されたテキストを示す )およびDoプロパティ( アクティブなドキュメントを示す )はg.vbに配置され、マクロからg.Selectionおよびg.Docを介してアクセスできます。
- プロジェクトを再コンパイルし、Visual Studio 2012 \ AddInsフォルダー内のファイルを更新した後、マクロへのホットキーの割り当てを繰り返す必要があります。
PS:建設的な批判と提案を喜んでいます。