組み込み Linux で QT アプリケーションを再起動する簡単な方法 (QT4.8 qws ベース)

組み込み Linux で QT アプリケーションを再起動する簡単な方法 (QT4.8 qws ベース)

アプリケーション ソフトウェアには通常、次のようなビジネス要件があります。

新しいバージョンの APP が利用可能になると、プログラムを更新する必要があります。更新が完了したら (いわゆる更新は主に上書き形式です)、コンピューターをシャットダウンする必要はありませんが、アプリケーションは自動的に再起動できます。

オンラインでいくつかの情報を確認しましたが、説明が非常に複雑でした。作業をバッチで完了するスクリプトを作成する方が、より簡単で、より速く、より強力です。

プログラムでは、QT のスレッド ライブラリ関数を介して再起動することも、外部スクリプトを呼び出して再起動作業を完了することもできます。

qApp->closeAllWindows();
システム("/opt/app/restart_app.sh");

ご覧のとおり、 restart_app.shは外部スクリプトです。

外部スクリプトには次の内容が含まれます。

#!/bin/sh
キルオール -9 my_app
echo "my_appを再起動してください!"
#バックライトを閉じる
エコー 0 > /sys/class/backlight/バックライト/明るさ
/opt/app/my_app -qws -nomouse -font wqy-microhei &

スクリプトが実行されると、まずkillall -9 my_appを呼び出して、自分のアプリと同じ名前の現在のプロセスを閉じ、次にバックライトをオフにして LCD をオフにします。最後に、アプリを再起動してバックグラウンドで実行します。

これでアプリの再起動が完了します。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • Ubuntu Linux で Go 言語の Qt 開発環境を構成する方法
  • linuxdeployqt を使用して Ubuntu で Qt プログラムをパッケージ化する問題を解決する
  • pyqt を使用して Linux コマンド プログラムをリモートでバッチ実行する方法
  • Ubuntu Linux で Qt を使用して MySQL データベースに接続する方法
  • Linux 環境 (CentOS 6.7 64 ビット) に Subversion 1.9.5 をインストールする方法
  • Linux QT Kit が見つからない、バージョンが空の問題の解決策

<<:  Vueはカウントダウン機能を実装する

>>:  Vue プロジェクトがページング効果を実現

推薦する

モバイルウェブサイトの開発に関するいくつかの結論

ウェブサイトのモバイル版には、少なくともいくつかの基本機能が必要です。 1. ページの適用性の問題:...

MySQL 5.7.17 zip インストールおよび設定チュートリアル MySQL 起動失敗の解決策

MySQL 5.7.17、現在最新バージョンのようです、ダウンロードアドレスここで、プラットフォーム...

WMLとは何ですか?

WML (ワイヤレス マークアップ言語)。これは HTML から派生したマークアップ言語ですが、W...

優れたユーザー インターフェース デザインのための 37 のヒント (画像付き)

1. 複数列レイアウトではなく、単一列レイアウトを使用する1 列のレイアウトにより、全体的な状況をよ...

Linux での MySQL のインストールに関する詳細なチュートリアル

1. MySQLサービスをシャットダウンする# service mysqld stop 2. rpm...

Vant Uploaderは1枚以上の写真をアップロードするコンポーネントを実装します

この記事では、1枚以上の写真をアップロードするためのVant Uploaderコンポーネントを紹介し...

CSS3 でテキストの点滅効果を実現する 3 つの方法 サンプルコード

1. 透明度を変更してテキストを徐々に点滅させると、次のような効果が得られます。 <!DOCT...

MySQL でよく使われる型変換関数の概要 (推奨)

1. Concat関数。よく使用される接続文字列: concat 関数。たとえば、SQLクエリ条件...

Linux システムでデプロイメント プロジェクトを設定する方法

1. ファイアウォールの設定を変更し、対応するポートを開きますLinux システムのファイアウォール...

MySQLデータベーステーブルの容量を確認する方法の例

この記事では、MySQL のデータベース テーブルの容量を確認するためのコマンド ステートメントを紹...

モバイルウェブページのサイズ調整を実装する方法

ようやく手元のプロジェクトが終了し、行方不明だった人たちが戻ってきました!プロジェクトを進める過程で...

CSS クロスフェード() を使用して半透明の背景画像効果を実現するサンプルコード

1. 要件の説明特定の要素については、背景background-imageを半透明にしたいが、テキス...

Nginx に lua-nginx-module モジュールをインストールする方法

ngx_lua_module は、lua パーサーを nginx に埋め込み、lua 言語で記述され...

Linuxコマンドとファイル検索の詳しい説明

1. ファイル名検索を実行するwhich ('実行可能ファイル' を検索) //PA...