none
vistaで自作アプリがブロックされる RRS feed

  • 質問

  • vistaのスタートアップにC#で作成した自作アプリを自動実行するようにショートカットを配置しました。
    再起動して確認してみたところ、vista起動直後にブロックされてしまい、タスクバーに「ブロックされたスタートアッププログラム」としてブロックされた旨表示されます。

    どのようにしたら自動的に実行してくれるのでしょうか。

    2007年1月31日 19:24

すべての返信

  • 理由があるからブロックされているはずです。何の理由もなくブロックされるということはありません。おそらく詳細表示とかで見れるとは思いますけど。。。

    考えられる一番大きなところでは、UACの昇格が求められているという場合ですかね。

    スタートアップに入れるソフトの場合、昇格要求があるものは全部ブロックされてしまうと思います(実際それで、プログラムの一つがブロックされた経験があるのでw)。

    そうであれば、スタートアップに用意したショートカットをログイン後に実行しても昇格要求が入ると思います。それが理由であれば昇格しないようにプログラムを修正するという能動的なVistaへの対応が必要となります。

     

    2007年2月1日 8:12
  • ありがとうございます。

    エラーメッセージを確認すると、

    認識できないプログラムがこのコンピュータへのアクセスを要求しています

    と表示されます。

    どうやらデジタル署名がないために表示されていることまではわかりました。そこで、デジタル署名をつけたいと考えております。私が現在もっているデジタル証明書は日立情報システムズの「ブラウザ用クラス1デジタルID」ですが、これを利用できるのでしょうか?

    デジタル証明書(Verisign)サービス /セキュリティ /日立情報システムズ
    http://www.hitachijoho.com/solution/shield/verisign/index.html

    また署名するにはVisual Studio 2005でできるのでしょうか?

    署名をしたことのある方ご教授ください。

    2007年2月1日 21:54
  • 残念ながら利用できません。

    プログラムへのデジタル署名はコード証明書(Code Signing)という別のものが必要になります。Verisignでは確か個人向けにはコード証明書を発行していなかったはずなので、個人であればほかの会社のものを使うことになります。

    "Code Signing"で検索するといくつか会社が出てきます。

    2007年2月2日 4:54
  • えっと、コード証明書かってのとは別に、なぜ、会社のデジタル署名を任意に使えるのでしょうか?

    デジタル署名はいわば実印と身分証明書を合わせたようなものです。会社のデジタル署名ということは、会社の実印押してるのと同じです。

    これを押せる立場にあるのは限られているはずであり、アプリにポンポン押せるようなものじゃないはずなのですが?

    さて、現実的な問題。

    アクセス許可が求められているということは、署名があっても解決しません。署名をつけることで、誰がアクセスしようとしたかはわかりますが、動かないということに変わりはありません。

    なので、解決策としては、昇格しないで実行するようにする以外にないと思います。まずは、UAC(User Access Control)の仕組みを学んでみてはいかがでしょうか。

    2007年2月2日 6:22
  • ありがとうございます。

    あれからいろいろ調べてみました。Code Signningが利用可能なデジタル証明書はなかなかないですね。VeriSignのものは10万円ちかくするし...。そもそも個人レベルでの取得は予算的にも、申請書類上も難しいですね。

    それとUACについて学習したいと思います。いくつか検索して読んでみたのですが、一般の消費者向けレベルの情報しか得られませんでした。もっとプログラミングに踏み込んだ、何かいい参考サイトをご存じであれば教えてください。

    2007年2月6日 8:45
  • 返事がずいぶんと遅くなりました。

    自作に限らず、タスク スケジューラでスタートアップに最上位の権限で登録する事ができるようです。

    こうなるとUACの確認が付いてまわるわけですが、別問題でしょう。

     

    UACに関しては、ローカルポリシーの設定で自動的に昇格するようにできますが、VBSのように権限が必要か自動で判別できないものもあります。

    ただ、アプリケーションのインストールという観点では、ローカルポリシーを変更すべてきではないでしょう。

    こちらでも自作で自分専用のデバイスドライバはどう解決するんだ、と行き詰っています。

    このパターンは絶対値から言えば少数ですが、プログラミングを不自由に感じます。

     

    OSというくらいなのだから、UACにしても権限を設定したら記憶するオプションを用意してほしいものです。

    UACの確認は仕様なので、当面の間は解決されるとは考えにくいでしょう。

     

    そういえば、UACは別問題でした。

    2007年3月12日 0:39
  • スタートアップでブロックされるって、これ読むと仕様っぽいんだけど・・・

    http://support.microsoft.com/kb/930367/ja
    2007年12月10日 2:10