Генерация EXE из скрипта IronPython

Я использую 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 ответа

Решение

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

Возможно, я не очень хорошо понимаю вопрос, но копирование 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.

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

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

Наслаждаться.:)

Другие вопросы по тегам