過去の桐井戸端BBS (桐談義・その他) |
4189 | Windows9x と NT(2000) でのファイルシステムの違い | hidetake | 2000/1/17-22:15 |
FAT16 や FAT32 に NTFS とファイルシステムの違いはありますが、 それ以外に取り扱えるファイル名にも違いがあります。 つい先日 NetWare 上のファイルを NT で取り扱おうとして思い出し たのですが、NetWare 上のファイルで"α"なんて含むと Microsoft の NetWare クライアントソフトで NT 上にファイルをコピーしよう とするとエラーで跳ねられコピーできません。 NT でも、Novell のクライアントソフトを使っていると、一応コピー は可能です。 しかし、問題はそれだけでなく、DOS や Windows9x、それに NetWare では全角文字の大文字/小文字は区別されますが NT 上では区別され ないことにあります。 Widnows9x 上等では ABC.TBL と abc.TBL は区別されますが、 NT 上では表示は違っても同じファイルとして取り扱われます。DOS の ANK (半角)文字と同じです。そして、"α"と言う文字も取り扱える のですが、DOSアプリからは大文字の"А"としてしか見えません。これ では"A"(エー)と区別つきません!!! まぁ〜、問題になることもあるでしょうし、気付かないで済まされる 場合もあるでしょう... 例えば、桐の #UC2 は Windows のファイルシステムを考慮して追加 されたとも思いますが、この辺の取り扱いも Windows9x と NT(2000) では異なってくる内容であるということです。 Windows9x から W2K(NT) への以降なんて、簡単に済まされそうです が、突っ込んで行くと、その違いはあります。 さらに、この全角文字の大文字/小文字の取り扱いの違いを追及する と面白い?内容であるので、もう少し詳しく書くと... まさか、こんな事などする人などいないと思いますが、例えば、 大型商品の単価を"ABC.TBL"に、小型商品の単価を"abc.TBL"に 書き、別の表から表引きしたとします。 Windows9x 上だけで使う分には、表引きや計算式で書いたとおり、 "ABC.TBL"と"abc.TBL"を区別して計算されます。 それでは、これらのファイルを NT(2000) に持っていった場合はどう なるか? また、Windows9x 上にファイルはあっても NT(2000)上の 桐からアクセスした場合はどうなるか? はたまた、NT(2000)上に あるファイルを Windows9x 上の桐からアクセスした場合はどうなる か? また、ついでにこれらの存在を確認してから開くために #fsize で "ABC.TBL"や"abc.TBL" をチェックした場合はどうなるか? それも、ファイルの置き場所、桐の起動場所によりどうなるか? 興味のある方はご自分でお試し下さい... 特に NT(2000) から、Windows9x 上にあるファイルを開いた時には 面白い動作をします。 :-p あと、1ヶ月ほどで Windows2000 も発売され、好むと好まざるに関わ らず、否応なしに移行せざるを得ない場合もあろうかと思いますが、 どうぞお気を付け下さい。 | |||
4195 | Re:Windows9x と NT(2000) でのファイルシステムの違い | Ogo | 2000/1/18-01:12 |
記事番号4189へのコメント >Widnows9x 上等では ABC.TBL と abc.TBL は区別されますが、 >NT 上では表示は違っても同じファイルとして取り扱われます。 私もスタンドアローンの Win 95 上で面食らったことがあります。 半角の「h12」と「H12」が Windows 上で同じに扱われるのは充分承知。 問題は「H12」(「H」は全角)と入力したのに勝手に「h12」(「h」は全角)に 直された時です。これにはなかなか気付かずに大分悩みました。 MS-Access (Jet) を使った Visual-Basic のソフトなんですけどね。 インストール先を「H12〇〇」としてフォルダを作成したのに、あのインストーラー のバカタレは勝手に「h12〇〇」フォルダを作成して、そこにインストールしちゃっ たんですね。 Windows 上では「H12〇〇」と「h12〇〇」は違うフォルダなので、インストールし たはずのファイルが存在しなくて…… http://www.asahi-net.or.jp/~ez3k-msym/comp/acccoll.htm なんて読めば、 MS-ACCESS のソートに関する無茶苦茶な推移率が公開されていますが、 とにかくマイクロソフトって言語センスないよなぁ。 | |||
4198 | Re:Windows9x と NT(2000) でのファイルシステムの違い | hidetake | 2000/1/18-08:50 |
記事番号4195へのコメント >インストール先を「H12〇〇」としてフォルダを作成したのに、あのインストーラー >のバカタレは勝手に「h12〇〇」フォルダを作成して、そこにインストールしちゃっ >たんですね。 ホンと困ったソフトですね! このソフト NT での動作を前提とでもして いたのでしょうか? まぁ〜、こう言うこともあるから、システムドライブやソフトのインス トール先のファイル名&フォルダ名は、半角の英数字だけを用いた方が 何かと問題は無いのですよね。 データ(ドライブ)については、さすがに現在は全角文字も多く使いたい 時代ですが... さて、この違い本当にこれからどうしようかと悩んでしまいます。 今までは、NT は一切考慮していなかったため、桐ではファイルの存在や チェックは全て #UC2 で変換した上でチェックしていたのですが、これ からはどうしようかと... OS が何かだけでなく、そのファイルの存在場所によりチェック方法が 変わってくるわけだし... やっぱ、無用なトラブルを防ぐには「全角小文字の使用禁止令」か... しかし、何でこれぐらいの違い、9x と NT(2000) で存在するの? Samba を使った Linux(UNIX) 系へのアクセスも mangle の設定で悩ま されますが、やっぱマルチプラットフォームはめんどくさい? (^_^; ps. NT (2000) がデュアルブートとかで、DOS 上、または Windows9x 上で abc.txt(中身はabc)、ABC.txt(中身はABC)の2つが作られ ていたとして、NT (2000) 上でアクセスすると... エクスプローラや他のファイラで「abc.txt」を開いても、開かれる のは必ず「ABC.txt」で出てくるのは"ABC" dir で見ると「abc.txt」のファイル名が2つ DOS のファイラで見ると「ABC.txt」のファイル名が2つ TYPE ABC.txt もしくは abc.txt したら"ABC"が2行表示される 完全に「abc.txt」にはアクセスできない状態だ... | |||
4199 | Re:Windows9x と NT(2000) でのファイルシステムの違い | hidetake | 2000/1/18-09:43 |
記事番号4195へのコメント > http://www.asahi-net.or.jp/~ez3k-msym/comp/acccoll.htm これって、show さんのところで紹介されていましたね。で、 Access でパスワード管理していて、何も考えないで、そのまま比較したり していると、1バイト2バイトや半角全角の区別のないシステムになって いるところもあるらしい。IIS + ASP でもそのようなところがあるらしい... です。 | |||
4200 | Re:Windows9x と NT(2000) でのファイルシステムの違い | hidetake | 2000/1/18-11:52 |
記事番号4199へのコメント s/半角全角/大文字小文字/ |