Compare commits
No commits in common. "main" and "master" have entirely different histories.
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 0aa3007c5e7533c38ba8174eb3b99808fe6af835
|
||||
189
Main_v3.py
189
Main_v3.py
|
|
@ -4,11 +4,66 @@ from tkinter import messagebox
|
|||
import pyodbc
|
||||
import uuid
|
||||
|
||||
print("""
|
||||
|
||||
|
||||
....:::::::::
|
||||
::::::::::-----::::::
|
||||
::::------------=--------::..
|
||||
:::--=--============---==+===-:::.
|
||||
::---========++=++++======+++++==--:.:
|
||||
:--==++++++++++++++++++========---==-::.
|
||||
--==++++++++++++++++++++=====---:::-==--::
|
||||
:-==+**++++++++++++++++++====------::-==-::
|
||||
-==+**++++++++++++++++++++=====--------=-::
|
||||
-=++*++++++++++++++++++++++=========-----::
|
||||
-=+++++++++++++++++++++++++===========----:
|
||||
:=++++++++++++++++++++++++++==========---::
|
||||
-=++++++++++++++++++===+++++===-----====--
|
||||
-=++++++++++++++++++++==+++++=====-----==-
|
||||
-++++++++++++++++++++++++++++++++====-----
|
||||
==+++++++*#####*******++++++++++++++++=--=
|
||||
+===++++++****##%%%%##*****++++**###%##*+==-
|
||||
+*++=++++****#%##%@%%%%###***++*#%%%%%###*===-
|
||||
+*++=++++**####*#%@%#%%%##**++*#%%%@@%+*%%*+=-
|
||||
*++=+++++**+****####%%##*++==+#%%#%%#+++*+==-
|
||||
+*+++++++++++****###****++=====*####*++=====-
|
||||
+*=+++++++++++++++++++++++=======+**++=-----
|
||||
+*=+++++++++++++++++***++++==-=====+++==----
|
||||
++=+++++++++++++++*****+++==---===========--
|
||||
+=+++++++++++++*****+++++===---++======--=-
|
||||
==++++++++++**********+++++==--+++++=====-
|
||||
-==+++++++++*********##*******==++++++===-
|
||||
-==++++++++*****#**##*####**+====++++++==
|
||||
#%%%%%===+++++++++***##*****####**++++++==+++=-
|
||||
*+*#%%%#*+====++++++++**#%%%##****##********+====-
|
||||
++++++*##%@%#+++**====+++++++*##############***###*+====-
|
||||
++******###%%@@@@@%####*+=+==+++++**************+++++=+*++===-
|
||||
#***+**#*###%@@@@@@@@@@@@@%###*+=+==++++*****++*********++==++++=-=+=+=-
|
||||
#*#%%%###%%@@@@@@@@@@@@@@@@%###*++++++++**+************+++========*****++==-
|
||||
%%%######%%####%@@@@@@@@@@@@@@%%**+++++++++++++++***+++=========*###******+++++==
|
||||
%%@@@@%%%%%%%%%#%%@@@@@@@@@@@@@@%#**+*+**++++++++++++++++=====+%###########***++++*
|
||||
%@@@@@@@@@%%@@%%%%%%%@@@@@@@@@@@@@@###*****++++++*+++++++===+**#%####%###%####***+***
|
||||
%%%@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@%####**++++***++++*#####*%##%####%#%%%%##*******
|
||||
%%%%@%@@@@@@@@@@@@@@@@@@@%@@@@@@@@@@@@@@@@@@@%%%%%%##%%%@%%####*%%#%####%#%%%%%#########
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%##%#*#%#%####%##%%%%%%###%#%##
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%#%%###%######%##%#%%%%%%%%%%%##
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%####%%#####%##%%%%%%%%%%%%%###
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%####%%#%%##%#%%%%%%%%%%@%@%###
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%#####%%%#%%%%#%%%%%%%@@@@@@@%%##
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%%#%%%%##%%#%%%%%%%%%%%%@@@@@@@%%#**
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%@@@%####%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@@@@%%%#**
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%%%@@@@%%%%%%%#%%%%%%%##%%%%%%%%%%%%%%%%%@@@@@@%%%%##**
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%%@@@@%%@@@@@@@%%%%%%##%%%%%%%###%%%%%%%%%%%%%%%%%@@%%%%%%%%##*+
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%@@@@@@@@%%%%@@@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%###%%*#
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@@@@%@@@%@@@@@@@%%%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%/
|
||||
""")
|
||||
|
||||
class RemoteFolderSelector(tk.Tk):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
self.title("Remote Folder and SQL Database Selector")
|
||||
self.geometry("600x400")
|
||||
self.geometry("500x600")
|
||||
|
||||
# Создадим фреймы для лучшей компоновки элементов
|
||||
self.frame_left = tk.Frame(self)
|
||||
|
|
@ -76,9 +131,12 @@ class RemoteFolderSelector(tk.Tk):
|
|||
self.add_button = tk.Button(self.frame_left, text="Add to ibases.v8i", command=self.add_database_to_ibases)
|
||||
self.add_button.grid(row=4, column=0, padx=5, pady=5)
|
||||
|
||||
# Список баз из файла ibases.v8i
|
||||
self.ibases_listbox = tk.Listbox(self.frame_left, width=30, height=10)
|
||||
self.ibases_listbox.grid(row=5, column=0, padx=5, pady=5)
|
||||
# Список уже подключенных баз данных
|
||||
self.connected_bases_label = tk.Label(self.frame_left, text="Connected Bases:")
|
||||
self.connected_bases_label.grid(row=5, column=0, padx=5, pady=5, sticky="w")
|
||||
|
||||
self.connected_bases_listbox = tk.Listbox(self.frame_left, width=30, height=10)
|
||||
self.connected_bases_listbox.grid(row=6, column=0, padx=5, pady=5)
|
||||
|
||||
# Загрузка пользователей с локального компьютера по умолчанию
|
||||
self.load_users()
|
||||
|
|
@ -121,15 +179,18 @@ class RemoteFolderSelector(tk.Tk):
|
|||
messagebox.showerror("Error", f"Could not load remote users: {str(e)}")
|
||||
|
||||
def select_user(self, event):
|
||||
"""Обработчик двойного клика для выбора пользователя и загрузки баз из файла ibases.v8i."""
|
||||
"""Обработчик двойного клика для выбора пользователя."""
|
||||
selected_index = self.folder_listbox.curselection()
|
||||
if selected_index:
|
||||
self.selected_user = self.folder_listbox.get(selected_index)
|
||||
messagebox.showinfo("User Selected", f"Selected User: {self.selected_user}")
|
||||
self.load_ibases()
|
||||
self.load_connected_bases() # Загружаем базы для выбранного пользователя
|
||||
|
||||
def load_connected_bases(self):
|
||||
"""Загружаем базы данных из файла ibases.v8i для выбранного пользователя."""
|
||||
if not self.selected_user:
|
||||
return
|
||||
|
||||
def load_ibases(self):
|
||||
"""Загружаем базы данных из файла ibases.v8i выбранного пользователя."""
|
||||
try:
|
||||
# Определяем путь к файлу ibases.v8i
|
||||
if not self.ip_address:
|
||||
|
|
@ -139,50 +200,58 @@ class RemoteFolderSelector(tk.Tk):
|
|||
|
||||
ibases_path = os.path.join(base_path, "ibases.v8i")
|
||||
|
||||
if not os.path.exists(ibases_path):
|
||||
# Проверяем, существует ли файл
|
||||
if os.path.exists(ibases_path):
|
||||
with open(ibases_path, "r", encoding="utf-8") as f:
|
||||
lines = f.readlines()
|
||||
|
||||
bases = []
|
||||
current_base = None
|
||||
|
||||
for line in lines:
|
||||
line = line.strip()
|
||||
if line.startswith("[") and line.endswith("]"):
|
||||
if current_base is not None:
|
||||
bases.append(current_base)
|
||||
current_base = line[1:-1] # Убираем квадратные скобки
|
||||
elif current_base is not None and line.startswith("Connect="):
|
||||
# Здесь можно добавлять другие параметры, если нужно
|
||||
pass
|
||||
|
||||
# Добавляем последнюю базу
|
||||
if current_base is not None:
|
||||
bases.append(current_base)
|
||||
|
||||
# Сортируем базы в алфавитном порядке
|
||||
bases.sort()
|
||||
self.connected_bases_listbox.delete(0, tk.END)
|
||||
for base in bases:
|
||||
self.connected_bases_listbox.insert(tk.END, base)
|
||||
else:
|
||||
messagebox.showinfo("Info", f"No ibases.v8i file found for user: {self.selected_user}")
|
||||
return
|
||||
|
||||
with open(ibases_path, "r", encoding="utf-8") as file:
|
||||
lines = file.readlines()
|
||||
|
||||
# Ищем строки с названиями баз данных (начинаются с [)
|
||||
databases = [line.strip()[1:-1] for line in lines if line.startswith("[")]
|
||||
|
||||
if not databases:
|
||||
messagebox.showinfo("Info", "No databases found in ibases.v8i")
|
||||
return
|
||||
|
||||
# Сортируем базы в алфавитном порядке и выводим их в Listbox
|
||||
databases.sort()
|
||||
self.ibases_listbox.delete(0, tk.END)
|
||||
for db in databases:
|
||||
self.ibases_listbox.insert(tk.END, db)
|
||||
|
||||
except Exception as e:
|
||||
messagebox.showerror("Error", f"Could not load databases from ibases.v8i: {str(e)}")
|
||||
messagebox.showerror("Error", f"Could not load connected bases: {str(e)}")
|
||||
|
||||
def load_databases(self):
|
||||
"""Подключаемся к SQL серверу и загружаем список баз данных."""
|
||||
server = self.server_entry.get()
|
||||
login = self.login_entry.get()
|
||||
password = self.password_entry.get()
|
||||
self.server_name = self.server_entry.get()
|
||||
self.login = self.login_entry.get()
|
||||
self.password = self.password_entry.get()
|
||||
|
||||
try:
|
||||
connection_string = f"DRIVER={{SQL Server}};SERVER={server};UID={login};PWD={password};"
|
||||
connection = pyodbc.connect(connection_string)
|
||||
cursor = connection.cursor()
|
||||
conn_str = f'DRIVER={{SQL Server}};SERVER={self.server_name};UID={self.login};PWD={self.password};'
|
||||
conn = pyodbc.connect(conn_str)
|
||||
cursor = conn.cursor()
|
||||
|
||||
cursor.execute("SELECT name FROM sys.databases")
|
||||
databases = cursor.fetchall()
|
||||
|
||||
self.db_listbox.delete(0, tk.END)
|
||||
|
||||
for db in databases:
|
||||
self.db_listbox.insert(tk.END, db[0])
|
||||
|
||||
connection.close()
|
||||
self.db_listbox.insert(tk.END, db[0]) # db[0] содержит имя базы данных
|
||||
|
||||
conn.close()
|
||||
except Exception as e:
|
||||
messagebox.showerror("Error", f"Could not load databases: {str(e)}")
|
||||
|
||||
|
|
@ -194,9 +263,9 @@ class RemoteFolderSelector(tk.Tk):
|
|||
messagebox.showinfo("Database Selected", f"Selected Database: {self.base_name}")
|
||||
|
||||
def add_database_to_ibases(self):
|
||||
"""Добавляем базу данных в файл ibases.v8i."""
|
||||
if not self.base_name:
|
||||
messagebox.showerror("Error", "No database selected.")
|
||||
"""Добавляем выбранную базу в файл ibases.v8i."""
|
||||
if not self.selected_user or not self.base_name or not self.server_name:
|
||||
messagebox.showwarning("Warning", "Please select a user, database, and SQL server first.")
|
||||
return
|
||||
|
||||
try:
|
||||
|
|
@ -207,17 +276,39 @@ class RemoteFolderSelector(tk.Tk):
|
|||
|
||||
ibases_path = os.path.join(base_path, "ibases.v8i")
|
||||
|
||||
if not os.path.exists(ibases_path):
|
||||
with open(ibases_path, "w", encoding="utf-8") as file:
|
||||
file.write(f"[{self.base_name}]\n")
|
||||
else:
|
||||
with open(ibases_path, "a", encoding="utf-8") as file:
|
||||
file.write(f"[{self.base_name}]\n")
|
||||
# Сначала читаем текущее содержимое файла
|
||||
lines = []
|
||||
if os.path.exists(ibases_path):
|
||||
with open(ibases_path, "r", encoding="utf-8") as f:
|
||||
lines = f.readlines()
|
||||
|
||||
messagebox.showinfo("Success", f"Database {self.base_name} added to ibases.v8i")
|
||||
# Создаём новый GUID для базы данных
|
||||
base_id = str(uuid.uuid4())
|
||||
|
||||
# Перезагружаем список баз данных после добавления
|
||||
self.load_ibases()
|
||||
# Создаем новую запись для базы данных без лишних пробелов в начале
|
||||
new_entry = (
|
||||
f"[{self.base_name}]\n"
|
||||
f"Connect=Srvr=\"{self.server_name}\";Ref=\"{self.base_name}\";\n"
|
||||
f"ID={base_id}\n"
|
||||
f"OrderInList=511\n"
|
||||
f"Folder=/\n"
|
||||
f"OrderInTree=33024\n"
|
||||
f"External=0\n"
|
||||
f"ClientConnectionSpeed=Normal\n"
|
||||
f"App=Auto\n"
|
||||
f"WA=1\n"
|
||||
f"Version=8.3\n"
|
||||
)
|
||||
|
||||
# Добавляем новую базу данных
|
||||
lines.append(new_entry)
|
||||
|
||||
# Записываем обратно в файл
|
||||
with open(ibases_path, "w", encoding="utf-8") as f:
|
||||
f.writelines(lines)
|
||||
|
||||
messagebox.showinfo("Success",
|
||||
f"Database '{self.base_name}' added to ibases.v8i for user '{self.selected_user}'.")
|
||||
|
||||
except Exception as e:
|
||||
messagebox.showerror("Error", f"Could not add database to ibases.v8i: {str(e)}")
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
|
@ -0,0 +1,289 @@
|
|||
('C:\\Project\\build\\Main_v3\\PYZ-00.pyz',
|
||||
[('_compat_pickle',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\_compat_pickle.py',
|
||||
'PYMODULE'),
|
||||
('_compression',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\_compression.py',
|
||||
'PYMODULE'),
|
||||
('_py_abc',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\_py_abc.py',
|
||||
'PYMODULE'),
|
||||
('_pydecimal',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\_pydecimal.py',
|
||||
'PYMODULE'),
|
||||
('_strptime',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\_strptime.py',
|
||||
'PYMODULE'),
|
||||
('_threading_local',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\_threading_local.py',
|
||||
'PYMODULE'),
|
||||
('argparse',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\argparse.py',
|
||||
'PYMODULE'),
|
||||
('ast',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\ast.py',
|
||||
'PYMODULE'),
|
||||
('base64',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\base64.py',
|
||||
'PYMODULE'),
|
||||
('bisect',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\bisect.py',
|
||||
'PYMODULE'),
|
||||
('bz2',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\bz2.py',
|
||||
'PYMODULE'),
|
||||
('calendar',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\calendar.py',
|
||||
'PYMODULE'),
|
||||
('contextlib',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\contextlib.py',
|
||||
'PYMODULE'),
|
||||
('contextvars',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\contextvars.py',
|
||||
'PYMODULE'),
|
||||
('copy',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\copy.py',
|
||||
'PYMODULE'),
|
||||
('csv',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\csv.py',
|
||||
'PYMODULE'),
|
||||
('dataclasses',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\dataclasses.py',
|
||||
'PYMODULE'),
|
||||
('datetime',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\datetime.py',
|
||||
'PYMODULE'),
|
||||
('decimal',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\decimal.py',
|
||||
'PYMODULE'),
|
||||
('dis',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\dis.py',
|
||||
'PYMODULE'),
|
||||
('email',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('email._encoded_words',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\_encoded_words.py',
|
||||
'PYMODULE'),
|
||||
('email._header_value_parser',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\_header_value_parser.py',
|
||||
'PYMODULE'),
|
||||
('email._parseaddr',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\_parseaddr.py',
|
||||
'PYMODULE'),
|
||||
('email._policybase',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\_policybase.py',
|
||||
'PYMODULE'),
|
||||
('email.base64mime',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\base64mime.py',
|
||||
'PYMODULE'),
|
||||
('email.charset',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\charset.py',
|
||||
'PYMODULE'),
|
||||
('email.contentmanager',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\contentmanager.py',
|
||||
'PYMODULE'),
|
||||
('email.encoders',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\encoders.py',
|
||||
'PYMODULE'),
|
||||
('email.errors',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\errors.py',
|
||||
'PYMODULE'),
|
||||
('email.feedparser',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\feedparser.py',
|
||||
'PYMODULE'),
|
||||
('email.generator',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\generator.py',
|
||||
'PYMODULE'),
|
||||
('email.header',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\header.py',
|
||||
'PYMODULE'),
|
||||
('email.headerregistry',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\headerregistry.py',
|
||||
'PYMODULE'),
|
||||
('email.iterators',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\iterators.py',
|
||||
'PYMODULE'),
|
||||
('email.message',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\message.py',
|
||||
'PYMODULE'),
|
||||
('email.parser',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\parser.py',
|
||||
'PYMODULE'),
|
||||
('email.policy',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\policy.py',
|
||||
'PYMODULE'),
|
||||
('email.quoprimime',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\quoprimime.py',
|
||||
'PYMODULE'),
|
||||
('email.utils',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\email\\utils.py',
|
||||
'PYMODULE'),
|
||||
('fnmatch',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\fnmatch.py',
|
||||
'PYMODULE'),
|
||||
('fractions',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\fractions.py',
|
||||
'PYMODULE'),
|
||||
('getopt',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\getopt.py',
|
||||
'PYMODULE'),
|
||||
('gettext',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\gettext.py',
|
||||
'PYMODULE'),
|
||||
('gzip',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\gzip.py',
|
||||
'PYMODULE'),
|
||||
('hashlib',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\hashlib.py',
|
||||
'PYMODULE'),
|
||||
('importlib',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('importlib._abc',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\_abc.py',
|
||||
'PYMODULE'),
|
||||
('importlib._bootstrap',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\_bootstrap.py',
|
||||
'PYMODULE'),
|
||||
('importlib._bootstrap_external',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\_bootstrap_external.py',
|
||||
'PYMODULE'),
|
||||
('importlib.abc',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\abc.py',
|
||||
'PYMODULE'),
|
||||
('importlib.machinery',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\machinery.py',
|
||||
'PYMODULE'),
|
||||
('importlib.metadata',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\metadata\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('importlib.metadata._adapters',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\metadata\\_adapters.py',
|
||||
'PYMODULE'),
|
||||
('importlib.metadata._collections',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\metadata\\_collections.py',
|
||||
'PYMODULE'),
|
||||
('importlib.metadata._functools',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\metadata\\_functools.py',
|
||||
'PYMODULE'),
|
||||
('importlib.metadata._itertools',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\metadata\\_itertools.py',
|
||||
'PYMODULE'),
|
||||
('importlib.metadata._meta',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\metadata\\_meta.py',
|
||||
'PYMODULE'),
|
||||
('importlib.metadata._text',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\metadata\\_text.py',
|
||||
'PYMODULE'),
|
||||
('importlib.readers',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\readers.py',
|
||||
'PYMODULE'),
|
||||
('importlib.util',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\importlib\\util.py',
|
||||
'PYMODULE'),
|
||||
('inspect',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\inspect.py',
|
||||
'PYMODULE'),
|
||||
('logging',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\logging\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('lzma',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\lzma.py',
|
||||
'PYMODULE'),
|
||||
('numbers',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\numbers.py',
|
||||
'PYMODULE'),
|
||||
('opcode',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\opcode.py',
|
||||
'PYMODULE'),
|
||||
('optparse',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\optparse.py',
|
||||
'PYMODULE'),
|
||||
('pathlib',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\pathlib.py',
|
||||
'PYMODULE'),
|
||||
('pickle',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\pickle.py',
|
||||
'PYMODULE'),
|
||||
('pprint',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\pprint.py',
|
||||
'PYMODULE'),
|
||||
('py_compile',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\py_compile.py',
|
||||
'PYMODULE'),
|
||||
('quopri',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\quopri.py',
|
||||
'PYMODULE'),
|
||||
('random',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\random.py',
|
||||
'PYMODULE'),
|
||||
('selectors',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\selectors.py',
|
||||
'PYMODULE'),
|
||||
('shutil',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\shutil.py',
|
||||
'PYMODULE'),
|
||||
('signal',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\signal.py',
|
||||
'PYMODULE'),
|
||||
('socket',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\socket.py',
|
||||
'PYMODULE'),
|
||||
('statistics',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\statistics.py',
|
||||
'PYMODULE'),
|
||||
('string',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\string.py',
|
||||
'PYMODULE'),
|
||||
('stringprep',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\stringprep.py',
|
||||
'PYMODULE'),
|
||||
('subprocess',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\subprocess.py',
|
||||
'PYMODULE'),
|
||||
('tarfile',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\tarfile.py',
|
||||
'PYMODULE'),
|
||||
('textwrap',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\textwrap.py',
|
||||
'PYMODULE'),
|
||||
('threading',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\threading.py',
|
||||
'PYMODULE'),
|
||||
('tkinter',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\tkinter\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('tkinter.commondialog',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\tkinter\\commondialog.py',
|
||||
'PYMODULE'),
|
||||
('tkinter.constants',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\tkinter\\constants.py',
|
||||
'PYMODULE'),
|
||||
('tkinter.messagebox',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\tkinter\\messagebox.py',
|
||||
'PYMODULE'),
|
||||
('token',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\token.py',
|
||||
'PYMODULE'),
|
||||
('tokenize',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\tokenize.py',
|
||||
'PYMODULE'),
|
||||
('tracemalloc',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\tracemalloc.py',
|
||||
'PYMODULE'),
|
||||
('typing',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\typing.py',
|
||||
'PYMODULE'),
|
||||
('urllib',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\urllib\\__init__.py',
|
||||
'PYMODULE'),
|
||||
('urllib.parse',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\urllib\\parse.py',
|
||||
'PYMODULE'),
|
||||
('uu',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\uu.py',
|
||||
'PYMODULE'),
|
||||
('zipfile',
|
||||
'C:\\Users\\Saturn\\AppData\\Local\\Programs\\Python\\Python310\\lib\\zipfile.py',
|
||||
'PYMODULE')])
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -0,0 +1,27 @@
|
|||
|
||||
This file lists modules PyInstaller was not able to find. This does not
|
||||
necessarily mean this module is required for running your program. Python and
|
||||
Python 3rd-party packages include a lot of conditional or optional modules. For
|
||||
example the module 'ntpath' only exists on Windows, whereas the module
|
||||
'posixpath' only exists on Posix systems.
|
||||
|
||||
Types if import:
|
||||
* top-level: imported at the top-level - look at these first
|
||||
* conditional: imported within an if-statement
|
||||
* delayed: imported within a function
|
||||
* optional: imported within a try-except-statement
|
||||
|
||||
IMPORTANT: Do NOT post this list to the issue-tracker. Use it as a basis for
|
||||
tracking down the missing module yourself. Thanks!
|
||||
|
||||
missing module named pep517 - imported by importlib.metadata (delayed)
|
||||
missing module named 'org.python' - imported by copy (optional)
|
||||
missing module named org - imported by pickle (optional)
|
||||
missing module named pwd - imported by posixpath (delayed, conditional), subprocess (delayed, conditional, optional), shutil (delayed, optional), tarfile (optional), pathlib (delayed, optional)
|
||||
missing module named grp - imported by subprocess (delayed, conditional, optional), shutil (delayed, optional), tarfile (optional), pathlib (delayed, optional)
|
||||
missing module named posix - imported by os (conditional, optional), shutil (conditional), importlib._bootstrap_external (conditional)
|
||||
missing module named resource - imported by posix (top-level)
|
||||
missing module named _frozen_importlib_external - imported by importlib._bootstrap (delayed), importlib (optional), importlib.abc (optional)
|
||||
excluded module named _frozen_importlib - imported by importlib (optional), importlib.abc (optional)
|
||||
missing module named _posixsubprocess - imported by subprocess (optional)
|
||||
missing module named fcntl - imported by subprocess (optional)
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
|
@ -0,0 +1,38 @@
|
|||
# -*- mode: python ; coding: utf-8 -*-
|
||||
|
||||
|
||||
a = Analysis(
|
||||
['Main_v3.py'],
|
||||
pathex=[],
|
||||
binaries=[],
|
||||
datas=[],
|
||||
hiddenimports=[],
|
||||
hookspath=[],
|
||||
hooksconfig={},
|
||||
runtime_hooks=[],
|
||||
excludes=[],
|
||||
noarchive=False,
|
||||
optimize=0,
|
||||
)
|
||||
pyz = PYZ(a.pure)
|
||||
|
||||
exe = EXE(
|
||||
pyz,
|
||||
a.scripts,
|
||||
a.binaries,
|
||||
a.datas,
|
||||
[],
|
||||
name='Main_v3',
|
||||
debug=False,
|
||||
bootloader_ignore_signals=False,
|
||||
strip=False,
|
||||
upx=True,
|
||||
upx_exclude=[],
|
||||
runtime_tmpdir=None,
|
||||
console=True,
|
||||
disable_windowed_traceback=False,
|
||||
argv_emulation=False,
|
||||
target_arch=None,
|
||||
codesign_identity=None,
|
||||
entitlements_file=None,
|
||||
)
|
||||
Loading…
Reference in New Issue