[#49186] 日本語を含むパスに置いたスクリプトで require が失敗 — "5.5" <5.5@...>
5.5 と申します。
5 messages
2013/02/15
[#49193] [ANN] Ruby 2.0.0-p0 released — Yusuke Endoh <mame@...>
こんにちは。Ruby 2.0.0-p0 をリリースします。
14 messages
2013/02/24
[#49196] [ANN]Ruby-2.0.0-p0 mswin32版 MSI was Re: [ANN] Ruby 2.0.0-p0 released
— arton <artonx@...>
2013/02/24
artonです。
[#49216] Windows用 インストーラ無しパッケージの需要について (Re: [ANN]Ruby-2.0.0-p0 mswin32版 MSI was Re: [ANN] Ruby 2.0.0-p0 released)
— Takeshi Iogawa <alpha@246.ne.jp>
2013/02/27
いおがわと申します。 Ruby2.0の正式リリースおめでとうございます。
[#49217] Re: Windows用 インストーラ無しパッケージの需要について (Re: [ANN]Ruby-2.0.0-p0 mswin32版 MSI was Re: [ANN] Ruby 2.0.0-p0 released)
— "U.Nakamura" <usa@...>
2013/02/27
こんにちは、なかむら(う)です。
[#49219] Re: Windows用 インストーラ無しパッケージの需要について (Re: [ANN]Ruby-2.0.0-p0 mswin32版 MSI was Re: [ANN] Ruby 2.0.0-p0 released)
— Takeshi Iogawa <alpha@246.ne.jp>
2013/02/27
いおがわです。こんにちは。
[#49264] Re: Windows用 インストーラ無しパッケージの需要について
— ISHIKAWA Takayuki <rechka_osaka@...>
2013/03/09
こんにちは、石川と申します。
[#49194] [ANN] Rubyist Magazine 0041 号リリース — takkanm@...
日本 Ruby の会るびま編集のtakkanmです。
5 messages
2013/02/24
[#49201] Windows の Ruby 2.0.0 で irb が使えない — "5.5" <5.5@...>
5.5 と申します。
7 messages
2013/02/25
[#49204] ruby1.9でのTkMsgCatalogの振る舞い — 渡邊巌 <i.watanabe@...>
渡邊と申します。
7 messages
2013/02/27
[#49211] 仕様変更 — ytakagi <ytakagi@...5.dion.ne.jp>
7 messages
2013/02/27
[#49228] PDF ファイルが Adobe Reader などで開かれているかを検知したい — "5.5" <5.5@...>
5.5 です。お世話になっております。
6 messages
2013/02/28
[ruby-list:49230] Re: PDF ファイルが Adobe Reader などで開かれているかを検知したい
From:
Masaya TARUI <tarui@...>
Date:
2013-02-28 07:27:33 UTC
List:
ruby-list #49230
たるいです。
どうもflockからは見れない所でロックがかけれてるようで、pdfを開いてても排他ロックとれちゃいますね。
vista 以降ならちゃんと情報がとれる方法もある(http://nyaruru.hatenablog.com/entry/20070426/p1)ようですが、
簡単に調べるだけなら、
movable = open("a.pdf","ab"){true} rescue false
という方法で逃げれると思います。
2013年2月28日 14:17 Takeshi Iogawa <alpha@246.ne.jp>:
> いおがわです。
>
> 解決策でなくて申し訳ないのですが。
> これ、Ruby の問題でななくファイルの排他制御(ファイルロック・アンロック)
> の問題ですよね?
>
> 例えばAdobe Reader で開いているファイルは、エクスプローラから
> でも、cmd.exe上のmoveコマンドからでも移動に失敗すると思います。
>
> UNIX系なら、flock() システムコールでしょうけど、Windowsの場合、
> WIN32API のなかにファイルのロック・アンロックのAPIが用意されて
> いるようです(ざざっとぐぐったダケなので詳細はすみません)
>
> それから、仮にRuby にファイルのロック状態を確認するメソッドが
> あったとしても
>
> (1) PDF ファイルのロック状態を確認
> (2) アンロック状態(mv OK)
> (3) <-------- 誰か別のひと(or 別のアプリ)が当該PDFをロック
> (4) mv → やっぱり失敗
>
> というケースが発生しえます。
>
> ということでロジックを見直したほうがよろしいかと。。。
> # 具体的な方法が示せなくてごめんなさい
>
>
>
>
>
>
>
> (2013/02/28 12:42), 5.5 wrote:
>> 5.5 です。お世話になっております。
>>
>> PDF ファイルを Adobe Reader で開いている場合,FileUtils.mv
>> などで移動することができません。
>> ※Permission Denied と実行時エラーが出る。
>>
>> そこで,事前にそういう状態であるかどうかを検知したいのです
>> が,できますか?
>>
>> FileTest.writable? の類いは,パーミションを見ているようで,
>> 上記の状態でも true が返ります。
>>
>>
>> 実際に mv してみて,例外が出たらその場合の処理を行う,とい
>> う方法も考えられます。
>> しかし,同時に他のファイル操作も行いたいのです。
>> 複数のファイル操作の一つでも失敗したら全部を元に戻す,とい
>> うロジックもあり得るでしょうが,避けたいところです。
>>
>> 移動が可能かどうかを,移動を実行せずに知る手段はあるでしょ
>> うか?
>>
>> OS は Windows です。
>>
>
>
> --
> --
> Takeshi Iogawa
>
--
樽家昌也(Masaya TARUI)
No Tool,No Life.