プログラム起動・終了時に自動でバージョンアップをしてくれるClickOnceは非常に便利な機能ですが、標準では「スタートアップ」にアプリケーションを登録することができません
ClickOnce の配置の概要
じゃあアプリケーションのショートカットを自前で「スタートアップ」に置けばいいんじゃね? っていう考えになると思います。
実行ファイル名は
では「スタート」メニューに登録されているアプリケーション起動のショートカットを「スタートアップ」にコピーしてみたらどうなんだろうか…と試したところ、これがあっさりOK。
さっきのMSのドキュメントからしてセキュリティがらみで制限掛けているのかと思っていたのですが、単純にそういう機能がインストーラーに用意されていない、というだけのようですね。
実際には
な感じで書いておけば、次回の起動時にアプリケションが自動で動きます。
ClickOnce の配置の概要
じゃあアプリケーションのショートカットを自前で「スタートアップ」に置けばいいんじゃね? っていう考えになると思います。
実行ファイル名は
System.Reflection.Assembly.GetExecutingAssembly().Locationで、これでショートカットを作れば…と思うのですが、これだとClickOnce経由での起動にならないので起動時のアップデートが効きません。
では「スタート」メニューに登録されているアプリケーション起動のショートカットを「スタートアップ」にコピーしてみたらどうなんだろうか…と試したところ、これがあっさりOK。
さっきのMSのドキュメントからしてセキュリティがらみで制限掛けているのかと思っていたのですが、単純にそういう機能がインストーラーに用意されていない、というだけのようですね。
実際には
Dim fromPath As String = Environment.GetFolderPath(Environment.SpecialFolder.StartMenu) & "\プログラム\hoge\hoge.appref-ms"※hogeは任意で置換
Dim toPath As String = Environment.GetFolderPath(Environment.SpecialFolder.StartMenu) & "\プログラム\スタートアップ\hoge.appref-ms"
System.IO.File.Copy(fromPath, toPath, True)
な感じで書いておけば、次回の起動時にアプリケションが自動で動きます。
このブログにコメントするにはログインが必要です。
さんログアウト
この記事には許可ユーザしかコメントができません。