VB2005にてプログラムを作成し、配布しております。
問題点ですが、「アプリケーションの更新」(バージョンアップ)を行うと
(手動でデスクトップに作成していた)該当プログラムのショートカットが
消えてしまいます。ですので、毎回、「スタート」から、「すべてのプログラム」で、該当プログラムの右クリックで、ショートカットを作成しなければいけません。
解決策として、バージョンアップの度(難しいなら起動の度でも可)に、
自動でデスクトップにショートカットを作成することは出来ますでしょうか?
配布とバージョンアップはどうやってるんですか?
セットアッププロジェクトは使ってないのでしょうか?
aetosさん。回答有難う御座います。
配布とバージョンアップはClickOnceを使用してます。
セットアッププロジェクトですが、
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=33245&forum=7
http://www.geocities.jp/i_love_balard/myhome/dnet/makesetup.html
を参考にしたのですが、これらはVS2005でないと使用できないのではないでしょうか?
VB2005というのはExpress Editionですか?
Expressではセットアッププロジェクトはサポートされていないようですね。
ウチには Visual Studio 2008 Team Suite しか環境がないので、Express とは違うかもしれませんが…
プロジェクトのプロパティの「発行」>「オプション」>「マニフェスト」の中に「デスクトップ ショートカットの作成」という項目がありませんか?
これをチェックすれば、インストール時やアップグレード時に、スタートメニューにあるものと同じショートカットがデスクトップにできるはずです。
もし無い場合、Visual Basic 2008 Express にアップグレードして試してみることはできますか?
aetosさん。回答、有難う御座います。
現在使用しているのはVisual Basic 2005 Express Editionです。
なお、テスト用にVisual Basic 2008 Express Editionもインストールしているのですが、どちらにも、
≪「マニフェスト」の中に「デスクトップ ショートカットの作成」≫
と、いう項目はありませんでした。
試しにVisual Basic 2008 Express Edition SP1をインストールしたのですが
その場合は、上記項目がありました。
つまりは、現状(Visual Basic 2005 Express Edition)では無理だという認識でよろしいのでしょうか?
なるほど、SP1 からの追加機能でしたか。
2005 ではどうやっても無理だとは言いませんが、標準的な機能では不可能でしょう。
ちなみに、.NET Framework にはショートカットを作る機能はありません。
ここで、
・どうにか頑張って、2005 で実現したい
・2008 SP1 に移行して、チェックを一つつけるだけで済ませたい
のどちらを選ぶかです。
何か移行できない理由があるのでしょうか?
aetosさん。回答、有難う御座います。
私としては、《どうにか頑張って、2005 で実現したい》を選びたいのですが…。
もちろん、2008 SP1の方が簡単だとは思いますが
規模が大きいため、おいそれと変更することが出来ないのが現状です。
そもそも発端はバージョン時にデスクトップのショートカットが消えてしまうことを防ぎたいのです。
以前(数か月前?詳細不明)は、バージョンアップしてもショートカットが消えてしまうことはなく、同じショートカットで、新しいプログラムへのリンクが自動的に張られました。
それさえ解決できればいいのですが…。(初回時は手動操作でも可)
消えるようになった原因が、「VB2005」の設定変更(パッチ?)によるものなのか、OSのパッチによるものなのかもわからない状況でしたので、本件の表題とさせて頂きました。
この度、いろいろと調査したところ、なかなかこちらの意図した動作をすることが難しいようでしたので、2008 SP1への移行を行うことにしました。
思ったより、と言いますか、そのまま移行が可能でしたので(もちろんテストは行いますが)、これにて解決をさせて頂きたく思います。
ありがとうございました。