Visual SourceSafe 4.0
日本語版は、
Visual SourceSafe 4.0a
英語版に相当します。
このツールで 「マイクロソフト西暦
2000
年対応」に準拠するアプリケーションを構築できますか
?
可能。
日付の処理
Visual SourceSafe 4.0
には、1999
年
12
月
31
日を超える日付の処理に既知の問題があります。 概要は次のとおりです。
- 日付の
'年'
部分の表示について
- ファイルやプロジェクトの履歴表示について
- コマンド ライン
オプション
-VD
について
Visual SourceSafe 4.0
は、32 ビットの符号付
integer
型を使用して
1970
年
1
月
1
日以降の秒数を日付として保存します。保存した日付を表示するとき、年は
1900
との差分を符号付
char
型で保存されます。
この仕様に基づいて日付データが処理されるため、次のような表示上の問題が発生します。
日付の
'年'
部分の表示について
2000 年 1 月 1 日から 2027 年 12 月 31 日までの日付について、年数の 10
の位が数字ではなく特異な文字
で表示されます (X は 0 〜 9 までの任意の数)。
200X などの日付は、20:X と表示
201X などの日付は、20;X と表示
202X などの日付は、20<X と表示
たとえば、2003 年は 20:3 と表示され
2015
年は
20;5
と表示されます。これは表示上の問題であり、ファイルやプロジェクト
データの保存には影響ありません。ファイルやプロジェクト データは
Visual SourceSafe
Books Online
の記述通りに保存されます。2027 年 12 月 31 日を超える日付は判別されません。
ファイルやプロジェクトの履歴表示について
[ ツール] メニューの
[履歴の表示] コマンドにより表示されるダイアログ
ボックスでは、履歴を表示する日付の範囲を指定できますが、ここで西暦を
4
桁で入力しても認識されません。下 2
桁で入力した年数は 1900 年代の西暦として処理されます。コマンド
ラインからの実行でも同じ問題が発生します。
これは表示上の問題であり、ファイルやプロジェクト
データの保存には影響ありません。ファイルやプロジェクト データは
Visual SourceSafe Books Online
の記述通りに保存されます。履歴表示の問題は、ソース コード管理ツールとして
Visual SourceSafe を使用して開発者がビルドしたアプリケーションには影響しません。
コマンド ライン
オプション
-VD
について
コマンド
ラインからの操作で、-VD
オプション (Knowledge
Base Q128723
参照) により
1999 年 12 月 31 日を超える日付を指定すると、指定したファイルの最新バージョンに対してコマンドが実行されます。この問題は、以下のコマンドに影響します。
- Checkout
- Comment
- Diff
- Dir
- Findinfiles
- Get
- History
- Label
- Pin
- Rollback
- Share
- View
使用するコマンドによっては、指定した操作が正しくないファイルに実行されるため、データが破壊されたり消去されることがあります。
Visual SourceSafe
の BIOS 依存性
Visual SourceSafe
ではデータ ファイルに「タイム スタンプ」が使用されます。このタイム
スタンプにはシステム クロックから取得した日付情報が含まれています。タイム スタンプはマシンの
BIOS
(Basic Input-Output System) から提供されるもので、Visual SourceSafe
から提供されているわけではありません。西暦 2000 年問題に非対応の
BIOS/RTC が搭載されたマシンでシステム クロックが
2000
年
1
月
1
日にリセットされず、日付がオペレーティング
システムで自動修正されない場合は、新しいファイルやバージョンは間違ったタイム
スタンプで保存されます。これにより、各ファイルの複数のバージョンが履歴ダイアログに表示されなくなります。開発者は
PC
の製造元に問い合わせて、お使いのコンピュータの
BIOS
が西暦
2000
年対応であることを確認する必要があります。
下 2 桁の西暦の処理
70/1/1 〜 99/12/31
の
70
〜
99
年は、1970 〜 1999 年に変換されます。
2000/1/1 から 2038/1/18
の
00
〜
38
年は変換されません。
39 〜 69 は操作の対象として定義されていない値であり変換されません。
西暦 2000 年に対応したアプリケーションを開発するための望ましい方法
「日付の
'年'
部分の表示について」 と 「ファイルやプロジェクトの履歴表示について」
は、どちらもVisual SourceSafe をソース
コード管理ツールとして使用して開発を行うアプリケーション開発者には影響を与えません。日付を範囲指定しなくてもファイルやプロジェクトの履歴を表示できます。このとき、2028 年 1 月 1 日よりも前の履歴が表示されます。
2000 年を超えた日付を
Visual SourceSafe で参照する場合、年数の 10
年の位が記号で表されることに留意し、適切な 10 年代の桁に読みかえる必要があります。
ファイルやプロジェクトの履歴を表示する際は、日付による範囲指定をしないでください。そうすることにより、ファイルやプロジェクトのすべての履歴が表示されます。
コマンド
ラインから操作する場合、1999 年 12 月 31 日を超えるバージョンのファイルを操作するために
-VD
オプションを使用することを避けてください。特定のバージョンまたはラベルのファイルやプロジェクトを操作する場合には、できるだけ
-V
または
-VL
オプションを使用してください。バッチ ファイルを使用してコマンド
ラインから操作する場合は、ビルド、ビルド プロセスまたは
Visual SourceSafe
データベースを破壊しないように、バッチ ファイル内の
-VD
オプションを指定している個所をすべて削除してください。最悪の場合でも、グラフィカル
ユーザー インターフェイス (GUI) を使用して特定のファイルを指定し
[履歴の表示]
コマンドによりすべての履歴を参照することができます。
開発者は PC の製造元に問い合わせて、お使いのコンピュータの
BIOS
が西暦
2000
年対応であることを確認する必要があります。この問題のために西暦
2000
年問題に対応したアプリケーションをビルドできなくなることはありません。
推奨事項
Visual Source Safe 5.0 へアップグレードするには、Visual Studio 97 Service Pack 3 と Visual SourceSafe 5.0 西暦 2000 年問題修正プログラムを適用します。アップグレードは、1-888-MSFT-Y2K またはお近くのマイクロソフトの西暦 2000 年問題情報番号にお電話でお申し込みください。そのときに、ご使用の Visual SourceSafe 4.0 のライセンス番号をお知らせください。Visual Studio 97 Service Pack 3 は http://msdn.microsoft.com/vstudio/sp/vs97/ から、Visual SourceSafe 5.0 Year 2000 Update は http://msdn.microsoft.com/ssafe/downloads/year2000.asp
からダウンロードできます。(なお、Visual SourceSafe 5.0 アップグレード版は
12 月 24 日から提供いたします。)
|