うっかりフランケンシュタインを作ってしまいました。
インタープリターではすべて正常に動作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()
ですか? キーボード割り込みの前でもそれを行うことがあります。