2010年05月27日

特定のフォルダにおいてWindowsフォトビューアーで画像が開けない場合の対処法

Windows Vista を使用中、ちょっとビックリする現象に出会ったので、記事として載せておきます。

Vistaを使うときは、作成した文書やダウンロードしたファイルの一次保存場所としてデスクトップを使用しています。
また、JPGその他、画像ファイルをダブルクリックで開くソフトウェアはWindowsフォトビューアーに設定しています。

この状態で今まで何の問題もなく使えてたんですが、さっき突然、DLしたばかりのJPG画像がWindowsフォトビューアーで開かなくなりました。

現象としては、以下のようになります。

・デスクトップ上の画像はダブルクリックしても開かない
・右クリック→プログラムから開く で別のアプリを指定するとそのアプリで画像表示できるが、フォトビューアーを選択しても開かない
・別のフォルダ内のJPGファイルはダブルクリックでフォトビューアーで表示される
・デスクトップ上のフォルダ内のJPGファイルも正常に表示される

つまり、デスクトップ(C:\Users\ユーザー名\Desktop)直下のJPGファイルのみ、フォトビューアーで開けない、ということになります。

直前にFirefoxがフリーズしてPCを強制終了させたため、そこに原因があるかと考えてキャッシュやダウンロードの履歴を消去してみたり、「既定のプログラムの選択」でフォトビューアーを選び直したりしたんですが変化ありません。

ネットで原因を探してみたところ、意外なところに原因がありました。

vista-windows photo gallery won't open .jpg on desktop but will in a folder on the desktop - why?
Unable to open pics in Windows Photo Gallery on my Vista desktop - Vista Forums
Answer : Bug in Windows Photo Gallery

原因はデスクトップ上に同居するインターネットショートカットのリンクURLが長過ぎるため、だそうです・・・???

ホントかよ、と疑いつつ、デスクトップに新しいフォルダを作成、ショートカットをその中に移してJPGファイルをダブルクリック・・・開いた!

今度はショートカットが入ったフォルダにJPGファイルを入れて、そこでダブルクリック・・・開きません。

どうやらこれは本当のことらしいです。

デスクトップ上に保存してあるインターネットショートカットは、某求人サイト上のある企業の求人情報ページなんですが、ExcelでURLの文字数をカウントしてみると278文字ありました。
同じ求人サイトの別の企業のページのリンク(278文字)でも同現象が発生、またURL文字数が560文字の別サイトのリンクでも同現象が発生しました。

一方、上記参考サイトで検証用に紹介されている、GoogleマップのURLリンクについては文字数は342文字ですが現象発生せず。どうもこの現象、単にURLの文字数が多いだけでなく、別の要因も関わっているようですが、そこまではちょっと追求不可能でした。

いずれにせよこれはVistaのバグではないかと思われます。
もし特定のフォルダ内で画像が開かない現象が発生した場合、そのフォルダ内にインターネットショートカットが同居していれば、それを別のディレクトリに移動してみることで解決しそうです。

・・・それにしてもびっくりしました(^_^;)。



あと、この件で余計なことをしてしまったので、ここから下は個人的なメモです。

1.Windowsフォトビューアー について、画像を開くための実行ファイルは、「WindowsPhotoGallery.exe」ではなく「PhotoViewer.dll」!

i)画像ファイル右クリック→プログラムから開く→既定のプログラムの選択→「ファイルを開くプログラムの選択」ウィンドウで「参照」をクリック、C:\Program Files\Windows Photo Gallery を開く
ii)ウィンドウ右下「プログラム(*.exe;*.pif;*.com;*.bat;*.cmd)」を「すべてのファイル(*.*)」に変更、「PhotoViewer.dll」を選択して「開く」をクリックして確定



参考サイト:dgmatil blog: .gif がWindows フォト ビューアーで開かない

2.「ファイルを開くプログラムの選択」のソフトウェアリストから不要なソフトを削除
うっかり「WindowsPhotoGallery.exe」を既定のプログラムにしてしまい、ひどい目に会ったので、これをリストから削除したい。

レジストリエディタを開き、
「HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.jpg\OpenWithList」を検索、右ペインで「WindowsPhotoGallery.exe」のキーを選択、右クリック→削除

参考サイト:「ファイルを開くプログラムの選択」からプログラムを削除する方法


posted by nambei-x at 23:16| Comment(1) | TrackBack(0) | PC・ネット関連 | このブログの読者になる | 更新情報をチェックする

2010年05月25日

Ubuntu10.04 ハイバネートがうまくいかない(2) 解決?編

5月10日の時点では、

・スワップ領域を物理メモリのサイズ以上に拡大
・/etc/fstab に正しいスワップパーティションのUUIDを設定
・BIOSのWake-On-LAN をDisableに変更
・sysv-rc-confでacpidを自動起動に設定

まで行いました。
その後、この件についてはどん詰まっていて放置状態だったんですが、先ほど解決方法が見つかりました!
原因は、/boot/grub/grub.cfg に、メモリ内のデータを待避させる領域(=スワップ領域)が指定されていないことにありました。

具体的には、/etc/default/grub の「GRUB_CMDLINE_LINUX=」 以下に、「"resume=スワップパーティション名"」を記述します。
今回はUUIDで記述してみました。
(注意:/boot/grub/grub.cfg を直接編集してはいけないそうです)

1. /etc/fstabでスワップ領域のUUIDを確認

$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid -o value -s UUID' to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
#
proc /proc proc nodev,noexec,nosuid 0 0
# / was on /dev/sda1 during installation
UUID=b5xxxx9c-cxx5-4xxe-9xx0-68xxxxxxxx96 / ext4 errors=remount-ro 0 1
# /home was on /dev/sda6 during installation
UUID=eexxxxf7-6xx6-4xx2-9xx9-2cxxxxxxxx8d /home ext4 defaults 0 2
# swap was on /dev/sda5 during installation
UUID=e5xxxxbd-bxx0-4xx1-bxx2-d2xxxxxxxx44 none swap sw 0 0

2. スワップ領域のUUIDを/etc/default/grubに記述

$ sudo gedit /etc/default/grub

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX="resume=UUID=e5xxxxbd-bxx0-4xx1-bxx2-d2xxxxxxxx44"
(略)

3. 変更内容を反映させる

$ sudo update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-22-generic-pae
Found initrd image: /boot/initrd.img-2.6.32-22-generic-pae
Found memtest86+ image: /boot/memtest86+.bin
done

4. /boot/grub/grub.cfgを確認

$ cat /boot/grub/grub.cfg
(略)
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.32-22-generic-pae' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set b5xxxx9c-cxx5-4xxe-9xx0-68xxxxxxxx96
linux /boot/vmlinuz-2.6.32-22-generic-pae root=UUID=b5xxxx9c-cxx5-4xxe-9xx0-68xxxxxxxx96 ro resume=UUID=e5xxxxbd-bxx0-4xx1-bxx2-d2xxxxxxxx44 quiet splash
initrd /boot/initrd.img-2.6.32-22-generic-pae
}
(略)

再起動後、いくつかのアプリケーションを起動した状態でハイバネートを実行。
ファン類がすべて停止した後、電源ボタンを押下したところ、しばらくしてパスワード入力画面が表示され、パスワードを入力してログインしたところ、ハイバネート実行前の状態が表示されました。ようやくうまくいきました。

ハイバネート実行〜復帰時のログです。

$ cat /var/log/pm-suspend.log
Mon May 24 23:03:02 JST 2010: performing hibernate
Mon May 24 23:04:38 JST 2010: Awake.
Mon May 24 23:04:38 JST 2010: Running hooks for thaw
/etc/pm/sleep.d/action_wpa thaw hibernate:success.
/usr/lib/pm-utils/sleep.d/99video thaw hibernate:success.
/usr/lib/pm-utils/sleep.d/98video-quirk-db-handler thaw hibernate:success.
/usr/lib/pm-utils/sleep.d/95led thaw hibernate:not applicable.
/usr/lib/pm-utils/sleep.d/95anacron thaw hibernate:success.
/usr/lib/pm-utils/sleep.d/94cpufreq thaw hibernate:success.
/usr/lib/pm-utils/sleep.d/90clock thaw hibernate:not applicable.
/usr/lib/pm-utils/sleep.d/75modules thaw hibernate:success.
/usr/lib/pm-utils/sleep.d/55NetworkManager thaw hibernate:success.
/usr/lib/pm-utils/sleep.d/49bluetooth thaw hibernate:not applicable.
/etc/pm/sleep.d/10_unattended-upgrades-hibernate thaw hibernate:success.
/etc/pm/sleep.d/10_grub-common thaw hibernate:success.
/usr/lib/pm-utils/sleep.d/01PulseAudio thaw hibernate:success.
/usr/lib/pm-utils/sleep.d/00powersave thaw hibernate:success.
/usr/lib/pm-utils/sleep.d/00logging thaw hibernate:success.
/usr/lib/pm-utils/sleep.d/000kernel-change thaw hibernate:success.
Mon May 24 23:04:41 JST 2010: Finished.

参考サイト:
cc-env - grub2 の設定
Ubuntu 9.10 でのハイバネート設定 - MacBookインストールメモ



posted by nambei-x at 00:26| Comment(1) | TrackBack(0) | Linux学習帳 - Ubuntu | このブログの読者になる | 更新情報をチェックする

2010年05月16日

Ubuntu10.04 日本語入力システムをiBus→SCIMに変更 & geditのF10キー設定変更

インプット・メソッドの変更方法については非常に多くのサイトで言及されていますので、個人的な備忘録レベルの記述のみにしておきます。

1.SCIMおよび関連パッケージをインストール

$ sudo apt-get install scim scim-anthy scim-bridge

(関連パッケージも同時にインストールされる)

2.「システム」→「システム管理」→「言語サポート」を開き、「キーボード入力に使うIMシステム」で「scim」を選択

3.いったんログアウトし、再ログインで設定が反映される

以上です。



ところで、この状態でgeditを起動し、日本語入力したものを半角英数に変換しようとF10キーを押下したところ、変換されずにファイルメニューが表示されてしまいました。
他のテキスト入力フィールド等では問題ありませんので、geditの仕様のようです。

そこで調べたところ、これも設定エディタのキー値を変更することで解決することが分かりました。

/desktop/gnome/interface/menubar_accel の「F10」というキー値を削除することで、geditでもF10キーによる半角変換が可能になりました。

20100516_1701423.png


posted by nambei-x at 17:19| Comment(0) | TrackBack(0) | Linux学習帳 - Ubuntu | このブログの読者になる | 更新情報をチェックする

Ubuntu10.04 画像/動画アイコンのサムネイル表示を解除する

Ubuntuでは動画や画像ファイルについては自動的にサムネイルを作成し、それをアイコン表示する設定になっています。

内蔵HDDの中のファイルであれば特にどうということもないんですが、Windows機で主に使用している外付HDDをUSB接続した時など、新しいサムネイル作成に結構な時間とCPUパワーを費やしているようで、これが以前から非常に無駄に感じていました。

実際にサムネイルを作成している状態をtopコマンドで確認すると、画像ファイルではnautilusの、動画ファイルではtotem-video-thuのCPU使用率が急激に上昇します。

今回10.04をクリーンインストールしましたので以前のサムネイル情報はなくなっており、こりゃ何とかしなくちゃ、とGNOME設定エディタを開き、調べてみました。

「設定エディタ」を開き、

/apps/nautilus/preferences/show_image_thumbnails

を右クリックし、「キーの編集(E)」を選択

デフォルトの値「local_only」を「never」に書き換え、「OK」をクリック

以上です。

なお、キーの値と動作の関係は、

always・・・リモートサーバのファイルもサムネイル表示
local_only・・・ローカルファイルシステムのファイルをサムネイル表示
never・・・サムネイルイメージを作成しない

ということのようです。

Speed tradeoff for when to show an image file as a thumbnail. If set to "always" then always thumbnail, even if the folder is on a remote server. If set to "local_only" then only show thumbnails for local file systems. If set to "never" then never bother to thumbnail images, just use a generic icon.


それと、以前に作成されたサムネイルのデータは、 /home/ユーザー/.thumbnails ディレクトリの中に保存されていますので、rm コマンドで削除してしまいました。


posted by nambei-x at 16:15| Comment(0) | TrackBack(0) | Linux学習帳 - Ubuntu | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。