1

うっかりフランケンシュタインを作ってしまいました。

インタープリターではすべて正常に動作python pyinstaller.py --onefile myFile.pyしますが、.exe を作成するために実行した後、実行すると奇妙な動作を開始します。main()一見ランダムに関数を呼び出しているように見えます。

コードは次のようになります。

def main():
    print 'DO NOT CLOSE!'
    count = 0
    lastTime =  ((time.localtime()[4])*60) + (time.localtime()[5])
    sShot = ImageGrab.grab()
    saveSnap(count, lastTime)
    currentScreen = grab()
    while True:
        if currentScreen == grab():
            pass
        else:

            count += 1
            saveSnap(count, lastTime)
            currentScreen = grab()
            lastTime = ((time.localtime()[4])*60) + (time.localtime()[5])


if __name__ == '__main__':
    main()

非常に単純なもので、私が言ったように、インタプリタでうまく動作します。画面上の変更を検索し、スナップショットにタイムスタンプを付けるだけです。

ランダムに発砲する原因は何main()ですか? キーボード割り込みの前でもそれを行うことがあります。

4

1 に答える 1