Pergunta

Estou prestes a lançar um beta aplicativo e isso tem a opção de criar scripts de integração personalizado em < a href = "http://en.wikipedia.org/wiki/Python_(programming_language)" rel = "noreferrer"> Python .

O aplicativo terá como alvo Mac OS X e Windows, e meu problema é com o Windows onde Python normalmente não está presente.

Meu aproach real é silenciosamente executar o Python 2.6 instalar. No entanto, eu enfrentar o problema que não é ativado por padrão e o caminho não está definido quando o uso do opções de linha de comando . E eu temo que, se Python está instalado antes e eu atualizar para uma nova versão esta poderia quebrar outra coisa ...

Então, eu me pergunto como isso pode ser feito de forma limpa. Tudo bem se eu copiar todo o diretório Python 2.6, e colocá-lo em um sub-diretório do meu aplicativo e instalar tudo o que há? Ou com virtualenv é posible diferents executar versões do Python (se Python já está instalado na máquina?).

Eu também jogar antes de embutir Python com um DLL, e achei fácil, mas eu perdi a capacidade de depuração, então eu mudar para linha de comando plug-ins.

eu executar os plug-ins de linha de comando e ler a saída STDOUT e STDERR. A aplicação é feita com Delphi / Lazarus. Eu instalar outros módulos como JSON e clientes RPC, win32com, ORM, etc. I criar o instalador com bitrock .

UPDATE: Os usuários finais são proprietários de pequenas empresas, e os scripts em Python são feitos por desenvolvedores. Eu quero evitar qualquer passo adicional na implantação, então eu quero uma configuração totalmente integrada.

Foi útil?

Solução

Copiar um portátil Python pasta fora do seu instalador, na mesma pasta que o aplicativo Delphi / Lazarus. Defina todos os caminhos adequadamente para isso.

Outras dicas

Você pode tentar usar py2exe . Ele cria um arquivo .exe com Python já incluído!

Integrar o interpretador Python em seu aplicativo Delphi com P4D . Estes componentes realmente funcionar, e em ambas as direções também (aulas Delphi expostos a Python como extensões binários e interpretador Python dentro Delphi). Eu também vi um patch para compatibilidade Lázaro no Google Code "problemas" a página, mas parece que pode haver algumas questões não resolvidas lá.

Eu acho que não há nenhum problema combinando embalagem .EXE com uma ferramenta como PyInstaller ou py2exe e plugins Python escritos. O .EXE criado pode facilmente detectar onde está instalado eo interior código pode arquivos então simplesmente import de algum diretório plug-in pré-determinado. Não se esqueça que uma vez que você empacotar um script Python em um arquivo executável, que também empacota o intérprete dentro de Python, então aí está - um ambiente cheio Python personalizado com seu próprio código

.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top