[149] 「現在のセルのファイルを開く」で Windows フォト ギャラリーなどが起動しない
あすかぜ [2009/04/18 22:58:48]
[148] 現在のセルのファイルを開くが機能しない
http://www.asukaze.net/soft/cassava/bbs/index.cgi?t=148
に関連して気づいたバグ。
「現在のセルのファイルを開く」は「実行ファイル.exe "%1"」の形にしか対応できていない。
例えば Windows Vista の標準設定では、画像ファイルの関連付けは
%SystemRoot%\System32\rundll32.exe "%ProgramFiles%\Windows Photo Gallery\PhotoViewer.dll", ImageView_Fullscreen %1
となっているが、現在のCassavaではこれを
%SystemRoot%\System32\rundll32.exe "%1"
として処理しようとするため、正しく起動ができない。
Re: [149] 「現在のセルのファイルを開く」で Windows フォト ギャラリーなどが起動しない
あすかぜ [2009/04/22 21:30:25]
Ver.1.6.3 で修正。
今まで、わざわざレジストリを調べて関連付けられたプログラムを見つけて spawn で起動して・・・とやっていたのを、Win32API の ShellExecute 関数を使って素直にファイルを開くように変更しました。
ShellExecute(NULL, NULL, FileName.c_str(), NULL, NULL, SW_SHOWDEFAULT);
Cassava.exe も 3KB ほど小さくなりました。