2

私はgtkアプリケーションを持っています。通常のログイン画面を取得する代わりに、アプリケーションがユーザーに挨拶するように、システムを起動したときに自動的に起動するようにします。

私のアプリケーションは一種の現金支払いアプリケーションです。そのため、ユーザーは Linux のログイン画面を見ることさえできません。マシンが起動するたびに、サービスなどをロードした後、私のアプリケーションが画面に表示されます。そのアプリケーションを起動するために、とにかくパスワードを入力したりログインしたりする必要はありません。

これまでのところ、次のことを試しましたが、すべて無駄でした。

/etc/rc.local ファイル /home/EXE/cashier にコマンドを入力し、実行レベル 5 でマシンを再起動しましたが、何も起こりません。通常のログイン画面が表示されます。gui または gtk を一切使用しないその他のプログラムは、この方法で自動的に開始されますが、gtk アプリケーションは開始されません。

次に、 xint /home/EXE/cahier を置き、後で xint /home/EXE/./cashier を置きます

しかし、彼らもうまくいきませんでした。詳細を調べてみると、「既にスクリーン0でXサーバーが起動しており、他のサーバーを開けない」などの情報がありました。

次に、実行レベル 3 で起動しようとしましたが、今回はうまくいきました。xint /home/EXE/.cachier

ただし、実行レベル 3 では、フォントとアイコンのサイズが小さくなっています。さらに、一部のウィンドウは画面全体をカバーしていません。

ログイン画面を自動的に表示せずに、実行レベル 5 でアプリケーションを実行する方法が本当にありがたいです。

よろしく

編集 現在、アプリケーションはfedora core 2で実行されています

4

1 に答える 1

3

これは、Gtk アプリケーションに関するよりも、Linux ディストリビューションの起動に関する質問です。詳細はディストリビューションによって異なりますが、本質は次のとおりです。

  • gdm通常、X サーバーの生成を担当する機能を無効にします。

  • xinit(「xint」ではなく)実行して、サーバーを手動で起動します。これはクライアントを引数として取ります。Gtk アプリケーションを直接実行してもうまくいくかもしれません(ウィンドウ マネージャーに依存するのではなく、それ自体を配置およびサイズ変更するのに十分スマートである必要があります)。これを行うには、xinit に渡すスクリプトを使用します。

于 2009-10-15T03:46:14.743 に答える