- ベストアンサー
getURLを使わないでPDFを開くには?
現在プロジェクターに書き出したものでCDカタログを作っているのですが、CD内のPDFファイルを開くのにgetURLを使っています。 この方法だとブラウザを介してリーダーが起動するので、必要のないブラウザまで起動してしまいます。 何か別の方法で直接リーダーを起動してファイルを閲覧する方法をさがしています。 javascriptを使っても試してみましたが、環境によっては動かなかったり、ブラウザが起動してしまうのは同じでした。 フラッシュ5を使用しています。 何か良い方法を御存知の方がいましたら教えて下さい。 よろしくおねがいします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
Flash は元からローカル使用は向いていません。 プロジェクタにしてしまうと WSHのJScript や WSHのVBScript との連携の道も閉ざされますからますます不利です。 > 直接リーダーを起動してファイルを閲覧する これは, 「ファイルに関連づけられたアプリケーションでそのファイルを開く」 ということとほぼ等しいと思います。 こういうことをさせるには, OS によって言語やコマンドが違いますから, もしできたとしても環境による動作の違いは必ず起こります。 つまり, 少なくとも普通のアプリケーション同様, Mac用アプリケーション,Windows用アプリケーション のように, 開発を個別にする必要があります。 Windows でしたら, 例えば「A.pdf を関連づけられたアプリケーションで開く」 という専用の EXE を作成して, その EXE を,fecommand の exec で実行させればできると思います。 「A.pdf」,「B.pdf」,…,「Z.pdf」 のようにたくさんの PDF がある場合は, それぞれについて専用の EXE が必要になると思います。 このようなことが比較的楽にできるのも,Flash5が限界です。 FlashMX 以降はセキュリティの問題で, 制約が色々付きましたから,そんなことは普通しません(しにくいです)。 Mac に関してはよく知りません。 それなりの実行ファイル(HQX ?)を作成して同様にすればできるような気もします。 Windows でも, Vista と XP との間には大きな溝があるようですから, 個別に別アプリケーションを開発しなければならないかもしれません。 とにかく,fecommand の exec 以降は他言語のことですね。 Windows で XP 以下だと, 手軽には HSP 辺りでも 「ファイルに関連づけられたアプリケーションでそのファイルを開く」アプリケーション(EXE) を作成することはできると思います。 その他 VB でも C でも,できそうなものがあればそれで作成すれば良いと思います。 もし,JAVA(JavaScriptではありませんよ)でできると,OSの壁はないかもしれません。 ただし JAVA が実行できる環境でないと動作しませんし, exec で JAVA アプリケーションが起動できるかどうか,私は知りません。
お礼
ご回答ありがとうございました。 やはり簡単にはできないのですね。 execを使えばできないわけではなさそうですが、ファイル数が80くらいありますので、それぞれのpdfを開くexeを作るは大変そうですね。 いまのところブラウザから開く動作で落ち着いているので、問題がなければこのままでいくつもりです。 (それでもPCによってはPDFを開くことができない物もあるようです。) ブラウザやOSや設定によって様々な違いがあり、全てのPCに対して同じ動作をさせることは難しいことですね。 セキュリティが高くなるのはよいのですが、弊害も多いですね。 ありがとうございました。