C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[4]: ClickOnceのファイルの関連付けについての質問


(過去ログ 104 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■61892 / inTopicNo.1)  ClickOnceのファイルの関連付けについての質問
  
□投稿者/ カーネル (1回)-(2011/09/11(Sun) 01:05:08)

分類:[VB.NET/VB2005 以降] 

VB2008で作成したツールを配布するため、ClickOnceを使ってみようと思い、色々と試していて、
とりあえずClickOnceでのツールを配布することは何とか出来ました。
ただ、ファイルの関連付けについて分からないことがあり、質問させて頂きます。

1.ファイルの関連付けで入力するProgIDについて
 ファイルの関連付けを行う場合、[My Project]の[発行]タブで、[オプション]ボタンをクリックして
 [発行オプション]ダイアログを開き、その中の[ファイルの関連付け]で関連付けたいファイルの種類の
 「拡張子」・「説明」・「ProgID」・「アイコン」を設定しますが、「ProgID」には具体的に何を入れたら
 いいのでしょうか?
 (任意の文字でいいのでしょうか?)

2.Windows 7(64bit機)での[ファイルを開く]ダイアログ内の関連付けファイルのアイコン表示
 Windows 7の64bit機(VAIO)にこのツールをClickOnceでインストールし、このツールで[ファイルを開く]
 ダイアログ(OpenFileDialog)で関連付けファイルを開こうとするとき、ダイアログ内に表示される関連付け
 ファイルのアイコンが、1.の設定ダイアログで設定したアイコンではなく、真っ白なアイコン(アイコンが
 関連付けされていない拡張子のファイルに使われるアイコン)になっています。
 ちなみに、エクスプローラーでこの関連付けファイルを表示する場合は、ちゃんと設定したアイコンが表示
 されています。
 また、Windows Vista(32bit機)ではこの現象は起こらず、エクスプローラー上でも、[ファイルを開く]
 ダイアログ上でも、ちゃんと設定したアイコンが表示されています。
 なお、関係あるかどうか分かりませんが、このツールはx86でビルドしています。
 この現象についてお分かりの方はいらっしゃいますか?

やっとClickOnceを習得したと思ったら、このような壁にぶつかってしまいました。
どうぞ助言よろしくお願い申し上げます。
引用返信 編集キー/
■61917 / inTopicNo.2)  Re[1]: ClickOnceのファイルの関連付けについての質問
□投稿者/ カーネル (2回)-(2011/09/12(Mon) 15:16:15)
追加情報です。

> 2.Windows 7(64bit機)での[ファイルを開く]ダイアログ内の関連付けファイルのアイコン表示
>  Windows 7の64bit機(VAIO)にこのツールをClickOnceでインストールし、このツールで[ファイルを開く]
>  ダイアログ(OpenFileDialog)で関連付けファイルを開こうとするとき、ダイアログ内に表示される関連付け
>  ファイルのアイコンが、1.の設定ダイアログで設定したアイコンではなく、真っ白なアイコン(アイコンが
>  関連付けされていない拡張子のファイルに使われるアイコン)になっています。
>  ちなみに、エクスプローラーでこの関連付けファイルを表示する場合は、ちゃんと設定したアイコンが表示
>  されています。
>  また、Windows Vista(32bit機)ではこの現象は起こらず、エクスプローラー上でも、[ファイルを開く]
>  ダイアログ上でも、ちゃんと設定したアイコンが表示されています。
>  なお、関係あるかどうか分かりませんが、このツールはx86でビルドしています。
>  この現象についてお分かりの方はいらっしゃいますか?

この質問2.について、Windows 7の32bit機(DELL製)に触る機会があったので、同様のことを試したところ、
こちらは設定したアイコンがちゃんと表示されています。
今までの結果からは、64bit機に今回の原因のヒントがあると断定するには不十分なのですが、
[ファイルを開く]ダイアログで関連付けファイルのアイコンが、発行時に設定したものにならないという現象につき
どなたかお分かりになる方はいらっしゃいますでしょうか。
どうぞよろしくお願い申し上げます。
引用返信 編集キー/
■61918 / inTopicNo.3)  Re[1]: ClickOnceのファイルの関連付けについての質問
□投稿者/ 魔界の仮面弁士 (2352回)-(2011/09/12(Mon) 15:32:17)
No61892 (カーネル さん) に返信
> ファイルの関連付けについて
ClickOnce は .NET 2.0 版しか経験が無く、関連付けの機能については
把握していないのですが、以下、一般論だけで書きます。


> (任意の文字でいいのでしょうか?)
この場合の ProgID は、ファイルの種類を一意に識別する値にすぎないので、
既存の物と被らなければ、任意の文字列で良いと思います。


> 「拡張子」・「説明」・「ProgID」・「アイコン」
関連付けは、レジストリの HKEY_CLASSES_ROOT で管理されていますので、regedit 等で
インストール後の関連付けが、どのように行われているか確認してみては如何でしょう。
 HKEY_CLASSES_ROOT\<.拡張子>              ← オブジェクトのProgID
 HKEY_CLASSES_ROOT\<オブジェクトのProgID> ← アイコンや exe のパス等


> [ファイルを開く]ダイアログで関連付けファイルのアイコンが
ダイアログ中で、表示されるアイコンサイズを拡大あるいは縮小した場合、
描画されるアイコン画像に変化はありますか?

もし、アイコンサイズによって表示が崩れてしまっているのであれば、
特定解像度のアイコンが、本当にブランク画像として登録されているか、あるいは
OS が求める色数/解像度のアイコンが 関連付けアイコンに含まれておらず、
代替生成された画像がたまたまブランクに見えているのかも知れません。

「@icon変換」などのツールを使って、指定したアイコンに含まれている
サイズと色数の一覧を確認してみては如何でしょう。

引用返信 編集キー/
■61926 / inTopicNo.4)  Re[2]: ClickOnceのファイルの関連付けについての質問
□投稿者/ カーネル (3回)-(2011/09/12(Mon) 20:24:50)
魔界の仮面弁士様、コメント有難うございました。
また、ProgIDについてのご回答、ありがとうございました。

>>[ファイルを開く]ダイアログで関連付けファイルのアイコンが
> ダイアログ中で、表示されるアイコンサイズを拡大あるいは縮小した場合、
> 描画されるアイコン画像に変化はありますか?

[ファイルを開く]ダイアログでアイコン表示サイズを変えても変化はありません。
(白い紙のアイコンが大きくなったり小さくなったりするだけです。)

ちなみに、このアイコンは16×16, 48×48のサイズを設定していますが、
エクスプローラーで確認したところ、いずれのアイコンサイズも問題なく表示されます。
(ただし大アイコンより大きいものは48×48のサイズがそのまま表示されます。)

試しに、x86でビルドしていたものを(x86に依存する箇所を省いて)Any CPUでビルドし、
ClickOnce発行したものを使って今回の現象が発生している64bit機にインストールを行ったところ、
[ファイルを開く]ダイアログではちゃんとしたアイコンが表示されました。
どうやらx86でビルドすると今回の現象が起こるように思えてきましたが、何か対策はありますでしょうか?

気になる点といえば、

レジストリのHKEY_CLASSES_ROOT\<.拡張子>のAppIdの値が、x86ビルドとAny CPUビルドの時と内容が異なっていました。
x86:
 xxx.application, Culture=neutral, PublicKeyToken=(英数字), processorArchitecture=x86
Any CPU:
 xxx.application, Culture=neutral, PublicKeyToken=(英数字), processorArchitecture=msil

このように、processorArchitectureの内容が異なっていました。
ただ、これは関係あるかどうかは分かりません。
x86でビルドした場合の上記現象について、何か情報はございませんでしょうか?
よろしくお願い申し上げます。

引用返信 編集キー/
■61935 / inTopicNo.5)  Re[3]: ClickOnceのファイルの関連付けについての質問
□投稿者/ カーネル (4回)-(2011/09/12(Mon) 23:13:18)
追加情報です。

今回作成したルーツ(x86でビルド)を、ClickOnceを使わずにSetupプロジェクトでmsiファイルを作成してみました。
ファイルの関連付けは、Setupプロジェクトの「ファイルの種類」で設定しました。
これを用いて問題の64bit機にインストールしてみたところ、ClickOnceではうまくいかなかった[ファイルを開く]ダイアログの
アイコン表示がきちんと表示されていました。
やはり、64bit機にClickOnceでx86ビルドのアプリをインストールすると、このようなことになるのでしょうか?
引用返信 編集キー/
■61980 / inTopicNo.6)  Re[4]: ClickOnceのファイルの関連付けについての質問
□投稿者/ カーネル (5回)-(2011/09/14(Wed) 05:45:58)
色々と検討を続けましたが、やはりClickOnceでの配布を実現したいと考えています。
[ファイルを開く]ダイアログに表示されるアイコンの件については大きな問題ではないのですが、
何とかできるものであれば何とかしたいと思います。

助言がございましたらどうぞよろしくお願い申し上げます。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -