Extensions and Updatesmanager in Visual Studio を使用して、特定の拡張機能の自動拡張機能の更新を無効にできます。しかし、チームのすべてのコンピューターで無人モードで拡張機能FOOの自動更新を無効にするにはどうすればよいですか?
ADを使用するオプションが必要ですGPOまたはWindowsレジストリを変更して、特定のVisual Studio拡張機能が自動更新の受信を停止するようにします。これは今でも可能ですか?
VSによる更新のチェックを完全に停止します。
VS2019の場合:
vsregedit.exe set "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise" HKCU ExtensionManager AutomaticallyCheckForUpdates2Override dword 0
VS2017の場合:
vsregedit.exe set "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise" HKCU ExtensionManager AutomaticallyCheckForUpdates2Override dword 0
Visual Studio Marketplaceの拡張機能からTFSオンプレミスサーバーへの自動更新を停止するには
1Tfs_configuration1で以下のコマンドを実行します
update [Tfs_Configuration].[dbo].[tbl_JobDefinition]
set EnabledState = 2
where PartitionId > 0 and JobId = 'A8F60BD0-BCBA-4343-82B3-FD6B40D657D8'
JobId A8F60BD0-BCBA-4343-82B3-FD6B40D657D8
の拡張機能の自動更新を停止する必要があります。
今日も同様の問題に直面しました。完全に自動化されたソリューションは必要ないので、まだ入手していませんが、それを実行できる小さなアプリケーションを正しく準備できるように、十分な情報を収集したと思います。
Visual Studio 2017以降、構成は中央レジストリに保存されず、%LOCALAPPDATA%\Microsoft\VisualStudio\15.0_ <somekind_of_id>\privateregistry.bin
にあるプライベートファイルに保存されます。 somekind_of_id
の判別方法がわかりません(私の場合は3eeca950
です。簡単にするために、すべてのパスでこのような値を保持しているので、自分のものに置き換えてください)。このファイルはVisual Studioによってロックされているため、変更する前に閉じる必要があります(VSがロックを解放するのに数秒かかります)。
このファイルは RegLoadAppKeyA
を使用してアプリケーションHiveにインポートできます。この関数は、必要な値を変更するために一緒に使用できるHKEY
RegSetKeyValueA
を作成します。
興味のあるキーはSoftware\Microsoft\VisualStudio\15.0_3eeca950\ExtensionManager\ExtensionAutoUpdateEnrollment
です。その下に、インストールされているすべての拡張機能が一覧表示され、それぞれがDWORD値として表示されます。ここで、0
値は自動更新なしを意味し、1
は自動的に更新されることを意味します。
各拡張機能の値は、現在のバージョンを合わせた拡張機能のIDに基づいて付けられます。たとえば、WixToolset.VisualStudioExtension.Dev15,0.9.21.62588
です。
このIDは、拡張パッケージのmanifest.json
ファイルで確認できます(たとえば、7-Zipを使用して.vsixファイルを開くことができます)。 .vsixファイルがない場合は、%LOCALAPPDATA%\Microsoft\VisualStudio\15.0_3eeca950\Extensions\
で拡張子データを検索できます。