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

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

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

Re[3]: Windows7環境でのダウンロードアプリケーションの起動


(過去ログ 105 を表示中)

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

■62665 / inTopicNo.1)  Windows7環境でのダウンロードアプリケーションの起動
  
□投稿者/ ぱち (1回)-(2011/10/25(Tue) 15:45:30)

分類:[.NET 全般] 

VisualStudio2008 C# (Express版) を用いて、Windowsアプリケーション開発を行っております。
この度作成したアプリケーションをインターネットを介して配布することとなりました。
プラットフォームは「AnyCPU」にして、WindowsXP(SP3以降)、Windows Vista、Windows 7 の
32bit、64bitマシンでの動作を確認できました。

さっそくネットワーク上の別PCをサーバとみたて、IISを立ててファイルと関連ファイル一式(zipで圧縮)を配置し
更に別のマシンでダウンロードしての動作テストを行いました。

すると、Windows7(64bit)でアプリケーションを呼び出して解凍・実行した場合のみ、
「不明な発行元です。このファイルを……」とアプリケーションの呼び出しの度に警告ウィンドウが表示されてしまいます。

この現象の解消にむけて自分なりの調査・検証をしたところ、次のように確認が出来ました。

 @ Windows7(32bit)では同様の現象(警告ウィンドウ)は発生しなかった。
 A UACは32bitマシン、64bitマシンともに無効としている
 B 複数のアプリ、dllを複合的に持っているが、すべてのファイルの起動時・呼び出しで警告ウィンドウは出る。
 C 64bitマシンでも、アプリ・dllにプロパティから「ブロックの解除」を指定すると、この現象は発生しなくなった。


UACではなさそうだし、デジタル署名ならば発生は納得ですが、逆に32bit版がなぜ大丈夫だったのか不明ですし・・・。
対応方法はもちろんですが、まずは原因を知りたいと考えております。
上記よりこれでは?という原因に気が付かれましたら、どうぞお教えください。

こういった環境確認・動作検証をしろ、というものがあれば、それもお教えいただければ幸いです。
引用返信 編集キー/
■62668 / inTopicNo.2)  Re[1]: Windows7環境でのダウンロードアプリケーションの起動
□投稿者/ ギヤマン (1回)-(2011/10/25(Tue) 19:29:24)
No62665 (ぱち さん) に返信
>  1 Windows7(32bit)では同様の現象(警告ウィンドウ)は発生しなかった。
>  2 UACは32bitマシン、64bitマシンともに無効としている
>  3 複数のアプリ、dllを複合的に持っているが、すべてのファイルの起動時・呼び出しで警告ウィンドウは出る。
>  4 64bitマシンでも、アプリ・dllにプロパティから「ブロックの解除」を指定すると、この現象は発生しなくなった。

32ビットと64ビットの違いは関係ないような気がします。
IISでダウンロードということなので、httpか何かでダウンロードしたのだと思いますが、
そのときのダウンロードではブラウザを使用しましたか?
IEだとダウンロードしたzipファイルや、それを展開したexeなどは「ブロックの解除」が表示されます。
32ビット機ではそれが出なかったということは、IEでダウンロードしなかったのか、それとも
サーバ機に見立てたマシン=32ビット機なのか、ということが考えられますが、どうでしょうか。

Express版とのことなので、インストーラーは使用しない方向だと思いますが、
それならば自己解凍形式でダウンロード出来るようにすれば、警告は気にならないかも知れません。
(フリーの圧縮ソフトでも自己解凍形式で圧縮できるものがいくつかあります。)
引用返信 編集キー/
■62669 / inTopicNo.3)  Re[2]: Windows7環境でのダウンロードアプリケーションの起動
□投稿者/ Azulean (864回)-(2011/10/25(Tue) 22:10:02)
すでに書かれていますが、IE でダウンロードしたアーカイブ、実行可能ファイルなどには NTFS のサブストリームに情報が記録され、実行の際には警告が表示されるように実装されています。
この挙動自体に x86/x64 の差はありませんので、検証時の入手経路か、解凍手段か、ファイルシステムかのどれかに差があったのでしょう。

ちなみに、自己展開にしようが、デジタル署名されていないファイルをダウンロードしてきた時点で不明なファイルとして警告が出る点は変わりません。
この警告をマシにしたいのなら、デジタル署名を付与してください。
引用返信 編集キー/
■62674 / inTopicNo.4)  Re[3]: Windows7環境でのダウンロードアプリケーションの起動
□投稿者/ ぱち (2回)-(2011/10/26(Wed) 13:18:36)
ギヤマン 様、Azulean 様

ご意見ありがとうございます。返信が遅くなり申し訳ございません。

【現象について】
>IISでダウンロードということなので、httpか何かでダウンロードしたのだと思いますが、
>そのときのダウンロードではブラウザを使用しましたか?
>IEだとダウンロードしたzipファイルや、それを展開したexeなどは「ブロックの解除」が表示されます。

> すでに書かれていますが、IE でダウンロードしたアーカイブ、実行可能ファイルなどには NTFS のサブストリームに情報が記録され、実行の際には警告が表示されるように実装されています。
> この挙動自体に x86/x64 の差はありませんので、検証時の入手経路か、解凍手段か、ファイルシステムかのどれかに差があったのでしょう。

ご指摘のとおり、ダウンロードテスト時のブラウザは全てIEを使用しております。
なるほど、それが原因のようですね・・・。
不特定多数にダウンロードしてもらうので、利用者の多くはIEを使用してくることが想定されます。


>32ビット機ではそれが出なかったということは、IEでダウンロードしなかったのか、それとも
>サーバ機に見立てたマシン=32ビット機なのか、ということが考えられますが、どうでしょうか。

> ちなみに、自己展開にしようが、デジタル署名されていないファイルをダウンロードしてきた時点で不明なファイルとして警告が出る点は変わりません。
> この警告をマシにしたいのなら、デジタル署名を付与してください。

32bit機でのダウンロードテスト時は、サーバ見立てのマシンも32bit機、
64bit機でのテスト時はサーバマシンも64bit機で行っていました。
ブラウザのことも含め、すべての環境での警告ウィンドウ問題の解消のためには、デジタル署名の付与が確実ということですね。


⇒ お二方のご意見を参照に、デジタル署名を付与したものを用意して、サーバ機・ダウンロード機の様々な
  組み合わせを確認し、リリースにこぎつけるよう頑張ります。
  ギヤマン 様、Azulean 様、ありがとうございました。


解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -