2004年1月18日
10.1から10.1.5へ
先日のMacOS X 10.1で動かなくなっちゃった件ですが、だめ元で10.1.5までバージョンを上げて試してみました。結果的にはやはりだめだったんですが、10.1から10.1.5に上げるのに凄い苦労をしたので、覚え書きとして書いておきます。まあ、10.1なんて今更なんですが、テストするには今後も必要ですからね。
まず、念のためCD-ROMから10.1をクリーンインストールするところから始めたのですが、そのインストールが終わって再起動後に、自動的にソフトウェアアップデートが起動しますよね。そこで最初に出てくるアップデートをインストールしてしまうと、どうも「Mac OS X 10.1.5 統合アップデート」がインストールできなくなるようなのです。
正確にはその統合アップデートをインストールするためには「Installer アップデート」を行う必要があり、更にそれを行うためには最初のよりもっと古い「Security Update 10-19-01」をインストールする必要があるという、ややこしい話でした(^^;) 最初にソフトウェアアップデートの指示どおりやっちゃうと、これがインストールできなくなるのです。これに気づくまでに無駄な時間をたくさん使ったぞ!(笑)
あとから統合アップデータとか作ってくれるのはありがたいけど、中途半端な“統合”はやめて欲しいものです。アップルもテストしてないとは思えないので、環境によって動いたり動かなかったりするのかもしれませんね。
というわけで(?)ScrubDelete Xの動作環境はMacOS X 10.2以降に変更したいと思います(^^;)
2004年1月15日
キーストロークじゃダメだった(^^;)
先日の「ScrubDelete X 今後の方針」で書いたFinderにキーストロークを送信する方法ですが、これにはちょっと問題がありました。キーストロークを送信するだけでは、果たしてその後の処理が成功したのか失敗したのか分からないのです。通常はそれでもかまわないのでしょうが、ScrubDeleteは成功したときに音を出さなければならないので、結果を知る必要があります。今まではAppleEventで事前にチェックしていたのですが、FileVaultがオンになっているとこれも正常に動作しないようです。選択されたファイルの数までは分かるのですが、各々のファイルの情報を得ようとするとエラーになっちゃうんですよね。勘弁して欲しい。
仕方ないのでFileVaultがオフのときは今までどおりAppleEventを使った方法でやるようにしました。FileVaultがオンのときはキーストロークを送信し、音も無条件で再生します。そのため、何らかの理由で捨てられなかった場合にも音が鳴ってしまいます。捨てられるようになっただけ1.0b1よりマシですが、完璧なものが作れないのはもどかしいですね。他に何かうまい方法はないかなぁ。
2004年1月12日
ScrubDelete Win?
一昨日の日記でAppleKについて書いていて改めて思いました。Windows版のScrubDeleteが欲しい! そう、誰でもない、私が欲しいんです(^^;)
スクラブ検出の基本ルーチンはMac版のものがほとんどそのまま使えるはずです。設定画面など、アプケーションの基本的な部分を作るのは雑作もないです。あとは選択されたファイルをゴミ箱に移動する処理ですが、これがWindowsを本職としていない私にはつらいところ。まあ、本気で情報収集しているかと言えば、ほとんど何もしてないんですが(^^;) Windows版実現への最後の壁です。
2004年1月11日
バックグラウンドオンリーアプリ
ScrubDelete XをバックグラウンドオンリーアプリにしたらMacOS X 10.1で動かなくなっちゃいました。うーむ。動作環境を10.2以降にしちゃっても問題ないですかねぇ。
2004年1月 6日
ScrubDelete X 今後の方針
次のバージョンの1.0b2は、早ければ今週末にも、遅くても1月下旬までには公開したいと思っています。今回は大きな変更を予定しています。私自信がまだMacOS Xの慣習、作法といったものを十分に理解していない面もありますので、以下に方針を書いてみました。ご意見等あればぜひコメントしてください。賛同のコメントも大歓迎です(^^;)
・現在は普通のアプリケーションですが、バックグラウンドアプリケーションとします。
これによってDockにアイコンが出なくなります。またメニューバーが使用できなくなりますので、環境設定ダイアログを出すには起動中のScrubDelete Xのアイコンをダブルクリックする仕様にしたいと思います。(起動中でない場合は単に起動するだけ。)
システム環境設定などに設定画面を持つという方法もあると思いますが、現段階では見送らせていただきます。Carbonアプリで作れるのか分からない(←勉強不足)、インストーラーを作らなくてはならないのではないか(←未確認)、インストール時に管理者パスワードの入力が必要かもしれない(←未確認)など、分からないことが多すぎるためです。将来的には対応するかもしれませんが、これを今やると大幅にリリースが遅れることになりそうですので、とりあえず簡単にできる方法でやりたいと思います。
・現在AppleEventで行っているファイルのゴミ箱への移動を、Finderに対してキーストロークを送信する方法に変更します。
これはFileVaultの問題(1/4の日記を参照)に対処するためです。今後のMacOS Xのバージョンでこの問題が修正される可能性もありますが、将来的にもこちらのほうがリスクが少ないと判断しました。ただ、OS XではFinderのショートカットをユーザーが自由に変更できますので、それに対処するかどうかはまだ迷っています。
ちなみにClassic版のScrubDeleteはFinderに寄生する(?)プログラムでしたので、PPostEvent()というAPIで自らの(つまりFinderの)イベントキューにキーストロークを送信する方法で動いていました。OS Xでは同じ方法が使えなくなったので1.0b1まではAppleEventを使用しましたが、先日、CGPostKeyboardEvent()というAPIがあることを知りました。なんでQuartz API内にあるねん(^^;) MacOS Xは奥が深いです(笑)
2004年1月 4日
ScrubDelete X β版
掲示板の書き込みは後ろへいっちゃったので、改めてここでもアナウンスしておきます。
ScrubDeleteのMacOS X版を開発中です。機能はほとんど実装できたので、現在β版として公開しています。よろしければ感想などをお聞かせください。問題点などあればご報告いただければ幸いです。
https://www.asari.jp/lib/ScrubDelete_X_1.0b1.dmg (181KB)
(※このバージョンの公開は終了しました)
現在、分かっている問題としては、MacOS X 10.3の新機能であるFileVaultに対応できていないことです。FileVaultをオンにすると(デフォルトではオフです)ホームディレクトリ以下のファイル(デスクトップ上のファイルも含む)がScrubDeleteで捨てられなくなります。
いろいろ調べたのですが、FileVaultがオンだとAppleScript等を使ってもファイル操作ができなくなっているので、私はこれはFinderのバグではないかと疑っています。今はどうしようもないので、このまましばらく放置です(^^;)
ページ: << < 1 2 3