スタートアップ遅延起動プログラム

ヒョんなことから思いついたプログラムです。
SchduleWatcher」を何年も前から使っています。   私はSchduleWatcherというスケジュール管理のフリーソフトを使っています。
このソフトはスケジュール、メモ、Todoなどを登録できる一般的なスケジュール管理のフリーソフトですが、 データフォルダが指定でき、その中に個々の情報のテキストファイルが書き出される方式なので私は他者との共有はしませんが 自宅デスクトップPCや、ノートPC、会社PCで共有したいので、 ストレージ共有ソフトである「OneDrive」のフォルダ内にデータフォルダを設定して運用しています。

SchduleWatcher」にはアラーム機能があって、登録されたスケジュールの何分か前にアラームのポップアップが表示される機能があるのですが、 そもそも「SchduleWatcher」の起動を忘れているとアラームも表示されないので、「SchduleWatcher」自体を Windowsのスタートアップに登録してみたのです。

そうしたら、新たに購入したノートPCで問題が見つかりました。 このノートPCPCIeSSDで高速起動のPCなのですが、 「OneDrive」の更新前に「SchduleWatcher」が起動されてしまい、最新状態で表示してくれません。
SchduleWatcher」の自動更新機能を使えば改善されるのですが、 そもそも1人でしか使わないので自動更新機能は設定していません。 そこでWindowsのスタートアップを「時間差」で行なうことを考えたのです。
上のコラムのことがきっかけで作成しました。
別に画期的なものでもありません。ですが同種のオンラインソフトもあまり見かけないので作成することにしました。 かなり古いものでは「同時起動でのハードディスクの保護」などを名目としたものはあるようですが、近年に作成されたものは見当たらなかったのです。

仕組みとしては、Windowsのスタートアップには起動目的のプログラムのショートカットではなく、 本プログラムのショートカット(指定引数付き)を置いてもらい、 そこで起動された本プログラムが設定されたプログラムを設定された遅延秒数後に起動するというものです。

最大3種類のスタートアップ登録がそれぞれ違う遅延秒数で設定でき、登録するのはプログラムだけでなく、 ショートカットでもドキュメントファイルでも構いません。 ドキュメントファイルの場合は既定のプログラムで開かれます。
本プログラム自体はWindowsに常駐するような動作ではなく、 登録された最大3種類のアイテムの起動が全て完了すると本プログラム自身も終了するようになっています。

スタートアップ遅延起動プログラム(設定画面)

スタートメニューやデスクトックのショートカットから本プログラムが起動された場合は、実際の遅延起動動作ではなく、このような設定画面が表示されます。 通常のWindowsのスタートアップから起動された場合は本プログラムのウィンドウは何も表示されませんが、 この設定画面で1つもスタートアップの登録がない状態で起動された場合はこの設定画面が表示されます。

この設定画面の下方にこのプログラム自身がWindowsのスタートアップに登録されているかどうかが表示されるようになっており、 画面サンプルの状態はWindowsのスタートアップに登録済の状態なのですが、未登録であれば「スタートアップ登録」のリンクボタンが表示されるようになっており、 これをクリックすれば指定の引数付きの本プログラムのショートカットがWindowsのスタートアップに登録されます。
手動で本プログラムのショートカットを作成してWindowsのスタートアップに登録した場合は指定引数が付かないので Windowsの起動時に設定画面が表示されてしまいのでご注意下さい。

上のコラムの目的は達成したのか
「クラウドストレージフォルダを利用するアプリをスタートアップに登録する」というような用途がどれだけあるか判りませんが 毎日使うアプリについてのスタートアップ登録が「やり方が判らないからやっていない」という利用者も相当多いことは予想されます。 こういったことで「毎回使うアプリをスタートアップに登録しよう」というニーズがあまりないのが実態のようです。

Windowsの「使い方」を単純なものにしたいというMicrosoftの政策的なものも見えるような気がしますが、 Windowsならではの機能を積極的にアピールしないのは別の意味で「もったいない」と思うのです。 例えばこのスタートアップ登録についても「知らなかったから使っていない」のか「知っていたけれど使っていない」は違うわけです。

今回の「SchduleWatcher」について「OneDrive」の更新前に起動してしまうという問題は回避されました。
設定する「遅延秒数」は実際に「OneDrive」の更新に掛かる所要時間が掴めない(SchduleWatcher以外で大きいファイルの更新もあり得る)ため、 60秒程度の設定にしておけば現状では問題なく運用できるようです。

インストールについて
下記の「ダウンロード」からインストーラが収容されたZIP形式の圧縮ファイルがダウンロードできます。



動作環境はMicrosoft .NET Framework 4.*(4.5~4.8)です。
本アプリケーションは32ビット版ですが、Windows64ビット版でも問題ありません。



解凍してから「DelayedStartUp1_Setup.exe」を起動することでインストールが行なわれます。インストール後はスタートメニューの「すべてのプログラム」から「スタートアップ遅延起動プログラム」を起動して下さい。 なお、デジタル証明書は搭載していないので、インストール中の確認画面で発行元は「不明」と表示されます。

アンインストールを行なう場合は、コントロールパネルの「プログラムと機能(プログラムの追加と削除)」から「スタートアップ遅延起動プログラム」を選択して「削除」を実行します。
本ソフトではレジストリは使用していません。画面モードの設定保存はMicrosoft .NET Frameworkの設定保持機能を使っています。

著作権等について
本ソフトの著作権は「Excelでお仕事!(井上 治)」が所有しています。
フリーソフトですのでご自由にダウンロードしてご利用いただけます。 但し、動作確認は充分に行なっておりますが、このソフトを使ったことによって損害が発生しても一切の責任は負えません。

本記事内容の転載についてはアーカイブに変更を加えないことを条件に、転載は自由にして頂いて構いませんが、必ずご連絡いただくようにお願いします。 連絡については当サイトの「意見・質問」ペ-ジが利用できます。
また、不具合や改善点などについてもご連絡いただけると幸いです。

バージョン情報

更新日 Ver 内容
2018/10/06 1.0.0.0 新規作成
2018/10/06 1.0.1.0 画面位置保持機能について複数画面時の個別DPI指定に対応する修正
2018/10/08 1.0.1.1 本プログラムのスタートメニュー収容フォルダを変更
2018/11/04 1.0.1.2 画面位置保持機能について複数画面時の個別DPI指定に対応する修正②
2021/10/15 1.0.1.4 開発環境を「Microsoft Visual Studio 2010」から「Microsoft Visual Studio 2019」に変更
2021/11/29 1.1.0.1 フレームワーク環境を「.NET Framework4.x」に変更
(ターゲットフレームワークは「.NET Framework4.5」に設定)
2022/05/14 1.1.0.3 ・開発環境を「Microsoft Visual Studio 2022」に変更
Windowsスタートメニューメンバの整理(概要説明リンクの削除⇒本体メニューから呼び出し可能)
2023/01/15 1.1.1.0 起動状態、エラー状態のログ出力機能を追加
独自メッセージボックス変更(マウス既定ボタンモード対応)

※バージョンアップでのインストール時に動作上は正常にインストールされるものの、EXEファイルが置き換わらない現象があるようです。 フォーム上の各コントロールをマウスでポイントするとツールチップでバージョンが表示されるので、新しいバージョンになっていない場合は一旦アンインストールさせてから再度インストールさせて下さい。 この方法でも設定内容は保持されます。

ダウンロードはこちら。

←DelayedStartUp1_Setup.zip
      (2027KB)
.NET Frameworkの変更について   PCに搭載されている.NET Frameworkのバージョンはその有無を含めてWindows側の環境に依存します。
本プログラムは従来、古いWindowsへの対応から、.NET Framework2.0~3.5をターゲットとしていましたが、 現在では逆に.NET Framework3.5をインストールすることが必要となって余分な作業負荷となってしまってきているため、 Ver1.1.0.0より.NET Framework4.xに変更しました。



本プログラムを新規にインストールされる場合は必要な.NET Framework環境の確認だけでご利用いただけますが、 以前の.NET Frameworkバージョンから.NET Framework4.xにバージョンアップされる場合のみ設定やデータが引き継がれないのでご注意下さい。



手動作業での設定引き継ぎ(設定ファイルのコピー作業)バージョンアップ時の不具合については、こちらで説明しています。



一旦、.NET Framework4.x環境に移行した後の今後のバージョンアップについての設定内容は、自動的に引き継がれるようになります。