4
下面是我正在運行的一個python腳本windows服務的錯誤跟蹤代碼片段。它似乎可以在Windows XP的python 2.7中正常工作,但是我正在使用的生產機器在Windows Server 2003上運行python 2.5。我遇到的主要錯誤是'error' object has no attribute 'errno'
我正在做一些根本上錯誤的Python 2.7 for 2.7?python 2.5中的套接字錯誤處理與2.7不同嗎?
代碼剪斷:
try:
if s == None:
s = self.connect()
char = s.recv(1)
line += char
except socket.timeout:
if s != None:
s.close()
s = None
continue
except socket.error, socket_error:
servicemanager.LogErrorMsg(traceback.format_exc())
if socket_error.errno == errno.ECONNREFUSED:
if s != None:
s.close()
time.sleep(60)
s =None
continue
else:
if s != None:
s.close()
os._exit(-1)
else:
pass
錯誤跟蹤剪斷:
if socket_error.errno == errno.ECONNREFUSED:
AttributeError: 'error' object has no attribute 'errno'
%2: %3
不夠公平,但我怎麼適當地捕捉連接被拒絕 – Richard
@Richard:看我(編輯)回答的第二部分的連接被拒絕處理 –
感謝,其現在的工作。 – Richard