8

質問は最後にあります-コンテキストを提示することから始めましょう:

Visual Studioを使用する際に職場で直面する問題の 1 つは、チームの全員が同じバージョンの SDK を使用していることを確認することです。

典型的な問題は、誰かが別のバージョンのDirect X SDKを使用してコードの動作が異なるか、新しい API を使用するために最新のプラットフォーム/Windows SDK にアップグレードし、他のプログラマーでコードが失敗することです。以前のバージョンをまだ使用しているマシン。

他のミドルウェアの問題を解決するために使用した方法は、ライブラリのセット全体、インクルード ファイル、ツール チェーンなどをソース管理システムに配置し、プロジェクトでこれらを使用して、誰も何もインストールする必要がないようにすることでした。 . Direct X SDK の以前のバージョンでもそれを行うことができましたが、SDK とツールチェーンの間の密接なリンクが原因で、Windows/Platform SDK で常に問題に遭遇しました。

VS2010 と VS2012 の両方をサポートする必要があり、Windows XP から Windows 8 ターゲットまでサポートする必要があるため、 v100v110、およびv110_xpツールセットをサポートする必要があります。

これは、関連するすべてのコンパイラと対応する SDK が、開発者のマシンとビルド システムの両方に必要であることを意味します。これは、ランダムな Windows の更新と .net フレームワークのリリースが定期的に msbuild を壊す傾向があることを特に考慮すると、維持するのに途方もなくコストがかかります。

質問は次のとおりです。

  • インストールされていないツールセットと SDK を Visual Studio で使用し、代わりに通常の VS インストール場所以外のフォルダーで使用できるものを使用することはできますか?

  • おまけの質問: 実行可能な場合、マシンにローカルにインストールされた構成ファイルを変更せずにそれを行うことは可能ですか?つまり: ソリューション/プロジェクトまたはプロパティ シートにすべてを含めます。したがって、ソースの構造を変更すると制御システムをすべてのマシンを更新する必要はありませんか?

ありがとう :)

4

2 に答える 2

0

これらのツールのインストールがいかに複雑であるかを考えると、これは複雑すぎるように思えます。この問題を解決するには、インストールされているツールとツール パスを確認し、インストールを "監視" する PowerShell スクリプトに投資します。パッチやアップデートなど、インストールされているすべてのバージョンを確認するのは比較的簡単です。これらは毎晩、またはビルドの一部として実行できます。また、開発者ボックスにインストールされているツール バージョンとビルド サーバーなど、さまざまなインストールの側面を比較することもできます。

これにより、10% の痛みに対して 90% の値が得られます。

于 2013-07-16T04:28:22.167 に答える
0

あなたが説明する問題は、あなたのアプローチでは解決されません。実際に必要なのは、ビルド サーバーと、ビルド サーバーでビルドされたバイナリの使用を含む done の定義です。ビルド定義の一部として、使用されるビルド環境に関連するいくつかの不変条件を含むテスト スイートも必要です。

于 2014-09-25T19:01:36.277 に答える