2016-02-07 3 views
0

Я только что создал скрипт python, который решает мне проблему, в которой я нуждаюсь, но я хочу преобразовать этот скрипт в exe-файл, чтобы запустить его на любой машине Windows, без необходимости установки на нее python У меня есть поиск того, как я могу преобразовать py в exe и запустить его, и я обнаружил, что могу использовать скрипт под названием py2exe, здесь проблема заключается в том, что я хочу преобразовать свой файл в exe и запускать его как службу Windows непрерывно на моем ПК.конвертировать скрипт python в exe и запускать как службу Windows

Вот мой сценарий:

import socket, sys, serial 

HOST = '' # Symbolic name, meaning all available interfaces 
PORT = 8888 # Arbitrary non-privileged port 

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
print 'Socket created' 

#Bind socket to local host and port 
try: 
    s.bind((HOST, PORT)) 
except socket.error as msg: 
    print 'Bind failed. Error Code : ' + str(msg[0]) + ' Message ' + msg[1] 
    sys.exit() 

print 'Socket bind complete' 

#Start listening on socket 
s.listen(10) 
print 'Socket now listening' 

# try: 

#now keep talking with the client 
while 1: 
    #wait to accept a connection - blocking call 
    conn, addr = s.accept() 
    # print('Connected with {}:{}'.format(addr[0], addr[1])) 
    str = conn.recv(100) 
    n_str = str[8:] 
    last_c = n_str.find('%') 
    last_str = n_str[:last_c] 
    final_str = last_str.replace('+',' ')[:-3] 
    print(final_str) 
    try: 
     pole = serial.Serial('COM4') 
     pole.write('           \r\n') 
     pole.write(final_str+'\r\n') 
     pole.close() 
    except: 
     print(Exception.message) 



s.close() 

Может я иметь некоторую помощь здесь

+0

службы Windows, есть некоторые специальные требования. См. Https://stackoverflow.com/q/32404/291641 для ответа, который дает правильный способ сделать это. Вы не можете просто использовать любой старый исполняемый файл. – patthoyts

ответ

3

Python является интерпретируемым языком, а не компилируются один. Таким образом, для его выполнения требуется интерпретатор.

Имея это в виду, вы можете использовать это: http://www.py2exe.org

Больше опций Представленные здесь: a good python to exe compiler?

или даже лучше, здесь: https://wiki.python.org/moin/DistributionUtilities

+0

Вы имеете в виду, даже если я конвертирую его в exe, я должен установить python для его запуска? –

+0

Либо это, либо пакет должен содержать все, в котором выполняется '.exe', должен содержать все, что должен выполнить файл. Ничего не будет «встроено в файл». Ну, это теория, она может быть встроена, но тогда у вас будет очень большой файл. Хорошим примером этого являются приложения на Mac. Когда вы открываете контейнер, вы можете видеть все там! На самом деле, почему интерпретатор Python предварительно установлен на каждую ОС (за исключением старой доброй Windows, конечно)! – Pouria

+0

Хорошо, не могли бы вы рассказать мне, как я могу запустить этот exe как услугу? Я обновил свой код –

Смежные вопросы