Генерация EXE из скрипта IronPython - PullRequest
0 голосов
/ 25 августа 2009

Я использую IronPython studio для создания сценариев IronPython и преобразования их в исполняемые файлы. При преобразовании в исполняемые файлы он создает главный исполняемый файл и две библиотеки DLL (IronMath.dll и IronPython.dll). Возможно ли создавать исполняемые файлы без студии IronPython. Я попробовал PYC, скачанный с codeplex.com. Он создает exe и dll с тем же именем, что и у exe (скажем, main.exe и main.dll). Но мне нужен exe и два dll (похоже на то, что создано студией IronPython). Так что я могу использовать другие exe-версии IronPython без каких-либо отдельных библиотек (этих двух библиотек будет достаточно для любой версии FePy).

Ответы [ 3 ]

2 голосов
/ 07 сентября 2009

Я создал приложение C #, которое использует IronPython.dll и IronMath.dll для преобразования сценариев IronPython в исполняемые файлы. Это не требует присутствия студии IronPython. Достаточно только DLL. Поведение exe такое же, как у студии IronPython (интегрировано с VS2008)

1 голос
/ 25 августа 2009

Возможно, я не очень хорошо понимаю вопрос, но копирование IronMath.dll и IronPython.dll в папку с main.exe и main.dll должно работать для Ironpython 1.x. Эти .dll отличаются для IronPython 2.x.

Редактировать: Ну, я попробовал PYC с IP 1.1, и он не работает. Это означает, что вы должны использовать его как минимум с IP 2.0.2 (он находится в папке Samples \ pyc). Для простого скрипта 'print' hello 'вам нужно отправить (вместе с hello.dll и hello.exe).

  • IronPython.dll
  • Microsoft.Scripting.Core.dll
  • Microsoft.Scripting.dll
  • Microsoft.Scripting.ExtensionAttribute.dll

Для более сложного скрипта вам, вероятно, понадобится IronPython.Modules.dll.

0 голосов
/ 28 августа 2009

DLL - это динамически связанная библиотека. Требуется, чтобы ваше приложение работало правильно. Все приложения, написанные на .NET, используют их. Вы просто этого не знаете, потому что поддержка встроена в .NET Framework, который почти каждый установил в своих системах. Yay, способ пойти Microsoft. Однако DLR (Dynamic Language Runtime) в настоящее время не встроен ни в один из распространяемых .NET (это изменится в .NET 4.0). Вот почему вы получаете файл DLL.

Вы пишете программное обеспечение, которое использует какие-либо библиотеки .NET? Если нет, просто напишите это на хорошем языке (так, как вы должны). Затем вы должны заглянуть в программу под названием py2exe. Вы когда-нибудь использовали Utorrent? Я предполагаю, что у вас есть. Это сборка с использованием strait up cpython + py2exe.

Наслаждайтесь. :)

...