Для Windows , вы можете просто создать исполняемый файл (например, с py2exe
) и переименовать его с .exe
на .scr
Вы можете щелкнуть правой кнопкой мыши по этому файлу и выбрать «Установить» или просто скопировать его в свой (?) Каталог Windows / System32, чтобы он появился в списке заставок!
Одно предположение: Я думаю, что было бы лучше создать только один исполняемый файл вместо обычной группы файлов (= зависимости).
Я использую эту конфигурацию настройки (для py2exe
), чтобы создать один исполняемый файл:
from distutils.core import setup
import py2exe
includes = []
excludes = ['_gtkagg', '_tkagg', 'bsddb', 'curses', 'email', 'pywin.debugger',
'pywin.debugger.dbgcon', 'pywin.dialogs', 'tcl',
'Tkconstants', 'Tkinter','MSVCP90.dll']
packages = []
dll_excludes = ['libgdk-win32-2.0-0.dll', 'libgobject-2.0-0.dll', 'tcl84.dll',
'tk84.dll']
setup(
options = {"py2exe": {"compressed": 2,
"optimize": 2,
"includes": includes,
"excludes": excludes,
"packages": packages,
"dll_excludes": dll_excludes,
"bundle_files": 1,
"dist_dir": "dist",
"xref": False,
"skip_archive": False,
"ascii": False,
"custom_boot_script": '',
}
},
zipfile = None,
windows=['main.py'] # <- the name of your code file
)
Edit:
Для его компиляции вам понадобится файл MSVCP90.dll в той же папке. Если вы не можете найти его на своем ПК, просто воспользуйтесь Google, чтобы найти его!
Операторы командной строки:
В зависимости от происходящего происходит передача нескольких операторов командной строки (предварительный просмотр, настройки и т. Д.). У вас будет список здесь:
http://www.wikihow.com/Convert-an-Executable-File-Into-a-Screensaver
К сожалению, там написано не все правильно, поэтому вкратце:
- / s и / S ... при запуске заставки (одна из них при предварительном просмотре)
- / c: # ... при нажатии кнопки конфигурации. Лучше всего использовать первые два символа
if sys.argv[1][:2]=='/c':
хорошо работает, например.
- / p # ... вызывается несколько раз (при закрытии конфигурации, или после предварительного просмотра и т. Д.), Каждый раз, когда он возвращается к общим настройкам заставки. Я просто отбрасываю это вместе с любыми другими возможностями (кроме / s / S или / c: #). Работает отлично!
Пользовательский ввод: Обработка нажатий клавиатуры действительно проста, потому что она не будет автоматически завершаться при перемещениях мыши или событиях клавиатуры, но вам придется реализовать эти методы самостоятельно! Поэтому не забудьте написать свою функцию "on_mouse_event_close_program"!