Macintosh Developer Online (MDOnline)


1999年11月5日発行号 - MDOnline-近付く冬



2000年問題で、マイクロソフトは年末年始特別サポートとし、24時間体制になる日もあるようです。フリーソフトの配付で有名なVectorも、2000年についての情報提供をはじめています。年の表示に問題のあるソフトはそこそこあるようです。
http://www.vector.co.jp/info/y2k/y2k_index.html
2000年が世界で最初に訪れる東京から、2000年問題に関するリポートを発信しようというプロジェクトも持ち上がっています。
http://www.zero.ne.jp/~y2k/index-j.html
政府は食料を買いだめしなさいとお達ししていました。そういうお達し自体、あらぬ方向に人心が向いてしまいそうでちょっとどうかと思いますが、2000年問題もいよいよ本番というところでしょうか。
ただ、2000年問題の本質は、「把握していない何かが起こる」可能性が高いという点にあります。しかも、それが2000年になった瞬間ならいいのですが、下手をすると破たんしていることが何年後にやっと気付くと言うこともあり得るかも知れません。むしろ、来年の正月に煙りを吹いてぶっ飛んでくれた方が、対処はやりやすいという気もします。準備も大切ですが、事後の対処を迅速にかつ適切に行うという心構えも必要でしょう。災害への対処に似ているかもしれません。
(新居雅行 msyk@mdonline.jp


【Mac OS 9シリーズ】マルチユーザ機能を使う(1)

Mac OS 9に新しく加わったマルチユーザ機能は何回かにわけて説明することにしよう。マルチユーザ機能により、Mac OSに「ログイン」という作業を起動後に必要になる。これによって、利用者ごとに異なる環境にそのつどセットアップされる。1台を何人かで使い回す場合には有効な方法となる。1人1人のデスクトップ設定やあるいはアップルメニューの設定などが別々に記録され、自分だけしか参照できない「書類」フォルダが使えるわけだ。複数のユーザで1台のマックを使うようなところでは重宝するかもしれない。
その場合、管理者が考えることは、マルチユーザ環境がこれまでの普通のMac OS環境とどこが違うのかという点だろう。利用環境をセットアップする上で知っておきたいこと、また、デベロッパーとして知っておきたいことを中心にまとめてみよう。

まず、マルチユーザ機能は既定の状態では機能していない。この機能を利用するには「マルチユーザ」コントロールパネルを呼び出して、機能を「入」にしなければならない。図では4人のアカウントがすでに登録しているが、最初は「Mac OS設定アシスタント」などで設定した所有者(「ファイル共有」コントロールパネルでの設定)だけが登録されているはずだ。
figs/macos9/07/file0001.gif

ユーザーのランクは「所有者」「通常利用者」「制限付き利用者」「パネル利用者」のいずれかである。所有者は1人だけだが、それ以外の利用者はたくさん設定することは可能だ。利用者は「新規利用者」ボタンをクリックして作成する。また、既存の利用者の設定変更は、選択して「開く」ボタンをクリックすればいい。次のようなダイアログボックスで、個々の利用者の設定ができるようになっている。「アカウントの種類」で利用者の種類を設定できる。このダイアログボックスの設定については、別の機会で説明しよう。
figs/macos9/07/file0002.gif

さて、マルチユーザ機能をアクティブにすると、Finderの「特別」メニューには「ログアウト」というメニュー項目が追加される。ショートカットは終了でおなじみのCommand+Qだ。選択すると、ほんとうにログアウトしていいのかをたずねてくる。OKボタンをクリックしてもいいが、表示されているように90秒後に自動的にログアウトされる。ログアウト時には、起動しているアプリケーションは全て終了されるが、バックグランドアプリケーションはそのままの状態になっているようだ。
figs/macos9/07/file0008.gif
figs/macos9/07/file0004.gif

起動後、あるいはログアウト後にはこのようなダイアログボックスが既定の状態では表示される。ここで名前を選択して、「ログイン」ボタンをクリックし、ダイアログボックスで指定したパスワードを入力する。音声認識パスワードを設定していれば、この後にパスワードのフレーズを声で出すということになる。
figs/macos9/07/file0005.gif

所有者でログインしているときに、ボリュームの中身を調べてみよう。まず、ボリュームのルートに「利用者」というフォルダができている。その中に、所有者以外のアカウント名のフォルダと、「共有書類」フォルダができている。この「利用者」フォルダは、複数のパーティションに別れたハードディスクなど、複数のボリュームがある場合には、すべてのボリュームに作られ、どの「利用者」フォルダにも、アカウント名のフォルダが作られる。
figs/macos9/07/file0006.gif

ここで、制限付き利用者でログインしてみた。すると、ハードディスクのルートは書き込み禁止になるなど、ハードディスク内のほとんどは書き込み禁止となっている。「利用者」フォルダは書き込み禁止になると同時に、別のアカウントのフォルダ自体が見えないのが既定の状態なのである。つまり、自分のアカウント名のフォルダと、「共有書類」フォルダしか、書き込み可能な状態になっていない。従って、間違えてシステムやアプリケーションのファイルを消したり、あるいは他人のフォルダの中身を見たりと言うことはできないということになる。
ここで自分のアカウント名のフォルダを開いてみると、本来システムフォルダにある「よく使う項目」「アップルメニュー」「インターネット検索サイト」「システム終了項目」「デスクトップピクチャ」「プリントモニタ書類」「ランチャー項目」「初期設定」「起動項目」の各フォルダがあり、システムフォルダ内にあるときと同じアイコンになっている。このとき、たとえば「システムフォルダ」内の「アップルメニュー」フォルダは普通のアイコンのデザインになっているのを確認してほしい。つまり、利用者でログインすると、システムフォルダ外にある、「アップルメニュー」などのフォルダをシステムは認識するようになるのである。
figs/macos9/07/file0003.gif

「書類」フォルダは文字通り、自分で作った書類をおさめるフォルダになるだろう。このエイリアスが自動的にデスクトップに作られている。「書類」の中には「共有書類」フォルダへのエイリアスが作られている。つまり、みんなで使う書類は「共有書類」に置くということになるだろう。なお、所有者の「書類」フォルダは作った後に任意に移動してもいいが、通常は起動ディスクのルートに作られる。
アカウント名のフォルダには、他にエイリアスの「ヘルプ」や、「Desktop Folder」がある。デスクトップは書き込み可能なので、自分でエイリアスを作ったりファイルを保存しておくことができるということだ。
たとえば、利用者でログインをしているときに、「初期設定」フォルダを見つけるような次のようなスクリプトプログラムを実行したとする。最後のコメントが得られた結果だ。利用者はruiであった。

tell application "Finder"
get preferences folder
end tell
--folder "初期設定" of folder "rui" of folder "利用者" of startup disk of application "Finder"

これを見て明らかなように、「システムフォルダ」外にある、「利用者」フォルダ内の「rui」フォルダの「初期設定」フォルダを初期設定フォルダと認識している。最近のプログラムではほとんどないとは思われるが、パス名を文字列処理して作成するようなプログラムの場合、マルチユーザ環境ではフォルダを誤認する可能性は高い。マルチユーザ対応であるためには、システムフォルダへのパスの取得において、FindFolderのようなAPIを使うなどシステムにきちんと問い合わせる必要がある。その上で、「システムフォルダ内にある」というような仮定のもとで動いているような箇所がないかをチェックする必要があるだろう。こうした配慮が基本的に必要になる。

カテゴリ:Mac OS 9, Mac OS 9


Find’XにMac OS 9の緊急特番が登場

日経BP社が公開している検索サイト「Find’X」にMac OS 9という分類が追加された。この原稿を執筆している段階で85件の登録がある。アップルのサイト内の関連リンクや、MacWIREを中心としたメディアでの記事、各ソフトハウスの対応状況などのリンクなどが含まれており、Mac OS 9に関するサイトを一望できると言えるだろう。

関連リンク:Find’X Mac OS 9
カテゴリ:Mac OSテクノロジー, Mac OS 9


4Dをファイルメーカーユーザー向けに12,800円で販売

日本でデータベースソフトの4th Dimensionを販売するエーシーアイ・ジャパンは、ファイルメーカーProのユーザー向けに、4D Standard Editionを12,800円という安価で販売する。ファイルメーカーProの登録証のコピーを添付して、同者に直接申し込む。Macintosh版かWindows版かのいずれかを選択するようになっている。期間は1999年12月25日まで。4Dは最初からリレーショナル機能が組み込まれており、ファイルメーカーProよりは高度な機能を持ったデータベースソフトだ。Standard版により、データベースの設計、フォーム作成、そしてプログラミングなどの一連の開発作業ができ、また、インタープリタ版ならばそのままアプリケーションの配付も可能となる。Standard版の定価は52,000円なので、かなりお買得だ。ファイルメーカーPro一筋の利用者も、4Dについては気になる存在だったかもしれない。ならば、手に入れるチャンスだと言えるだろう。

関連リンク:ファイルメーカーProユーザ様向けスペシャルキャンペーン
カテゴリ:データベース, 各種プロダクツ


Office 98のMac OS 9対応、基本的には問題なし

Microsoftが日本に向けて販売しているOffice98シリーズや、Internet Explorer、Outlook Expressについての、Mac OS 9への対応状況についてまとめた。以下のページにいくつかの文書でその内容が紹介されているが、Office 98については、マルチユーザの制限付きあるいはパネルでの利用においていくらか問題が出てくるほかは、致命的な問題はないとしている。また、Internet ExplorerやOutlook Expressには問題は見つかっていないとしている。Outlook Express 5では、Mac OS 9のマルチユーザ機能に対応している。

関連リンク:マイクロソフト マッキントッシュ対応製品の Mac OS 9 対応状況について
カテゴリ:各種プロダクツ, Mac OS 9


ATOK12は基本的にはマルチユーザ非対応

ジャストシステムは、同社製品のMac OS 9への対応状況についての説明文書を公開した。これによると、インプットメソッドのATOK12は、マルチユーザ環境には基本的には対応していない。所有者以外でATOK12を使う場合には、いくつかのファイルのコピーを手作業で行う必要があり、その手順が記載されている。その処置によって機能することはするのだが、制限付きあるいはパネルユーザは学習や単語登録ができないとか、初期状態に戻っているなどの制約がある。

関連リンク:Mac OS 9上でのジャストシステム製品の動作について
カテゴリ:各種プロダクツ, Mac OS 9


FontSyncとそのAPIに関するドキュメントが公開

Mac OS 9にFontSyncという機能が追加された、機能拡張やコントロールパネルなどからなる。あるマックでのレイアウトした文書を別のマックに持ち込んだ場合、タイプフェイスを正確に出力するのがFontSyncの機能だ。主にハイエンドDTPユーザー向けの機能だと位置付けられている。TrueTypeを使ってしまっている場合、フォントのバージョンが違うなど、タイプフェイスを正確に再現できない要員はいろいろある。そうした状況でもレイアウト時の結果を再現するというのがFontSyncの目指すところだ。この機能をアプリケーションから利用することができ、そのAPIを解説するのがこのドキュメントである。33ページであり、プレビュー版となっている。

関連リンク:FontSync 1.0
カテゴリ:アップルからの開発資料, Mac OS 9


リソースを使わない新しいフォント形式に対応したフォント管理のAPI

Mac OS 9やCarbonでのフォント管理についてのドキュメントが公開された。フォントは従来はリソースベースであったために制約があったが、ATSUIの導入など文字処理の改良とともに、フォント管理手法も見直されてきている。Carbonでは新しいフォント管理のためのAPIセットが公開されている。フォントの情報を取得したり、あるいはフォントデータを取り出すようなアプリケーションの場合、今後はこのAPIを利用することになる。こうしたフォント処理についてはCarbon 1.0では移行段階であると位置付けられており、従来のリソース形式のフォント処理もできるが、将来はそうした機能はなくなる予定だ。この文書では、そうした背景が最初に簡単にまとめられているが、APIの解説が中心だ。全部で17ページで、うち13ページがAPIの解説になっている。ドキュメント自体は最終版ではなく、プレビュー版となっている。

関連リンク:Font Management for Carbon 1.0 and Mac OS 9
カテゴリ:アップルからの開発資料, Mac OS X, Mac OS 9


QuickTimeのエフェクトをトラックとして組み込むサンプルプログラム

QuickTimeのエフェクト効果の利用方法を示すサンプルプログラム「QuickTime: QTEffects Explode」が配付されている。2つのPICT画像を、クロスフェードするようなムービーを自動再生する。PICT画像はあらかじめアプリケーションファイルにリソースとして仕込まれており、プログラムを実行すると、ファイル名の指定を行い、そのファイルにトランジションエフェクトを含むムービーが保存されている。再生はQuickTime Playerなどを使う。2つの映像トラックに加えて、1つのトランジション効果のトラックを付加するという作業がどのようなプログラムでできるのかを示すサンプルプログラムだ。エフェクトトラックの追加方法や、新しいトラックの作成方法を知りたい場合には参考になるだろう。

関連リンク:QuickTime: QTEffects Explode
カテゴリ:アップルからの開発資料, QuickTime


GameSprocketsの各コンポーネントのAPIに関する文書

GameSprockets Ver.1.7に関する文書として、以下の3つが新たに公開されている。いずれも、リンクしたページからPDFとしてダウンロードできる。InputSprocketはジョイスティックなど、ゲーム特有の入力デバイスなどを利用するための機能を提供する。DrawSprocketsは、高速な画面描画などをサポートする。NetSprocketはネットワーク対戦ゲームなどの作成をサポートする。いずれも基本的にはプレビュー版という位置付けとなっており、目次はあるものの、ほとんどがAPIのリファレンスだ。概論的な文書としては以下のリンクのページですでに公開されている「Apple Game Sprockets Guide」を参照するのが良いだろう。

Configuring Game Input Devices with InputSprocket(102ページ)
Manipulating Displays Using DrawSprocket(94ページ)
Simplifying Networked Gaming Using NetSprocket(108ページ)

関連リンク:Apple Game Sprockets
カテゴリ:アップルからの開発資料, Mac OS 9


ATSUIのプログラミング例を示すサンプルコード

Apple Type Services for Unicode Imaging(ATSUI)のサンプルコード「Text:TypeServicesForUnicode」が公開されている。Mac OS 8.5から登載されているATSUIは、UNICODEベースのテキスト表示機能をアプリケーションに提供する。サンプルコードでは縦書き各種のスタイル、ジャスティフィケーションの調節、フォントメニューやフォント関連の設定などを実際に動かしてみることができる。そのプログラムも添付されているので、基本的な機能の具体的な使い方を知るにはちょうどいいサンプルになるだろう。コードはC++を示すcpの拡張子だが、実際にATSUIの機能を使っている部分のプログラムはCでの記述とほとんど変わらない。

関連リンク:Text:TypeServicesForUnicode
カテゴリ:アップルからの開発資料, Mac OS 9


1999/11/4付けの更新されたTech Info Library

Appleより公開されているTech Info Libraryで、1999年11月4日付けで以下の文書が更新されている。以下のリストの左端が文書番号なので、記事の末尾にあるリンク先にジャンプし、その番号を手がかりに検索をすると良いだろう。なお、サードパーティの連絡先についての文書は省略した。

56594:ClarisImpact 2.0v3 Read Me
44005:iMac: iMac Update 1.0 Software
58384:PowerBook and iBook: Troubleshooting Won’t Run From AC Power
24803:Troubleshooting Unreliable Modem Connections
30893:Remote Access: Modem Not Responding Alert
58450:iBook: What To Do When It Won’t Run on Battery
58385:PowerBook and iBook: Troubleshooting a Dead Unit
24789:Troubleshooting "No Dial Tone"
6859:Mac OS: How to Use File Sharing
24482:56Kbps Modems: Getting The Fastest Connection
30742:iMac Third Party Product: Farallon EtherMac iPrint Adapter LT
20132:Ethernet Macintosh Address Table
43021:iMac and iBook: Connecting to a 10/100Base-T Ethernet Network
58445:iBook: Does Not Have a Backup Battery
43028:iMac: Where Can I Get a Floppy Drive?
58348:Mac OS: Alternating Flashing ? and Icon Inside Folder at Startup
58390:PowerBook and iBook: Troubleshooting Stuck or Non-responsive Keys
43024:Macintosh: Can I Run Windows?
43031:iMac and iBook: How to Backup Hard Drive Contents
58389:PowerBook and iBook: Trackpad Does Not Respond
58388:PowerBook and iBook: Trackpad Button Does Not Respond
43051:Tech Exchange and How To Use
30512:Internet Curriculum Connections v1.0: Known Issues

関連リンク:Tech Info Library
カテゴリ:Knowledge Base(旧TIL)