0

小さなプロジェクトでpynotifyを使用しようとしていますが、Fedora13マシンで奇妙な問題が発生しています。pynotifyをプログラムで実行すると、show()が呼び出されたときにクラッシュするようです、自分でその行を入力すると、正常に実行されます。私はUbuntuボックスでもテストしましたが、完全に正常に動作します。

私のテストコードは次のとおりです。

import pynotify

pynotify.init('someName')
n = pynotify.Notification("Summary", "Body")
n.show()

そしてこれを実行した結果:

$ python -i test.py 
Traceback (most recent call last):
  File "test.py", line 5, in <module>
    n.show()
glib.GError: Unable to connect to server
>>> n.show()
True
>>> 

それで、誰かがこの種の行動を引き起こすかもしれない何か考えを持っていますか?残念ながら、Fedora環境は私がほとんど制御できない環境であるため、rootアクセスなどを必要とするソリューションは実際には機能しません。pynotifyをローカルにインストールしてみることができますが、必要に応じて。助けてくれてありがとう。

4

1 に答える 1

0

オーウェンはこの答えを取るという私の申し出を受け入れなかったので、ここに私のために働いた解決策があります。なぜこれが機能するのか(漠然とした推測以外)はわかりません。また、これが適切な解決策であるかどうかについては保証しませんが、おそらくあなたが私と同じくらい奇妙な立場にある場合はこれは役に立ちましたか。

2回実行するn.show()と、2回目は正常に実行されます。したがって、Pynotifyが正しく機能するシステムで2つの通知を設定することを避けるために、私は以下を使用しました。

import pynotify

pynotify.init('someName')
n = pynotify.Notification("Summary", "Body")
try:
    n.show()
except:
    n.show()

もちろん、この小さな例には欠陥があることに注意してください。少なくとも、両方にスローされるPynotifyに実際の問題がある場合の結果はn.show()、最小限の作業例にすぎません。

于 2011-04-17T15:22:59.657 に答える