From 9b45bdf529fc6a87f79ffa55c0dea414e8f74722 Mon Sep 17 00:00:00 2001 From: serr Date: Sun, 16 Mar 2025 19:12:02 +0300 Subject: [PATCH] =?UTF-8?q?=D0=B2=D0=BC=D0=B5=D1=81=D1=82=D0=BE=20name,=20?= =?UTF-8?q?name2=20=D1=82=D0=B5=D0=BF=D0=B5=D1=80=D1=8C=20=D0=B8=D0=BC?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D1=8D=D0=BA=D0=B7=D0=B5=D1=88=D0=BD=D0=B8?= =?UTF-8?q?=D0=BA=D0=BE=D0=B2=20=D0=B2=20=D1=82=D0=B0=D0=B1=D0=BB=D0=B8?= =?UTF-8?q?=D1=86=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- comp.py | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/comp.py b/comp.py index 4ca5238..eeb44ab 100644 --- a/comp.py +++ b/comp.py @@ -1,5 +1,3 @@ -# ВНИМАНИЕ: Сравнивает 2 бинарника, !!!! скомпилированных под x64 !!!! - import sqlite3 import os, time import subprocess @@ -7,6 +5,7 @@ import subprocess # для работы с ida from i64tosqlite import create_sqlite_from_i64 from exetoi64 import make_i64 +# # для работы с excel import pandas as pd @@ -19,8 +18,8 @@ def main(): # эти пути необходимо задавать вручную ida_executable = r"C:\tools\IDA\ida.exe" diaphora_dir = r"C:\tools\diaphora" - exe_1_path = r"C:\tools\ilya.exe" - exe_2_path = r"C:\tools\my.exe" + exe_1_path = r"C:\tools\my.exe" + exe_2_path = r"C:\tools\ilya.exe" # # генерация i64 из exe @@ -56,7 +55,12 @@ def main(): os.remove(sql_output_path) # - export_to_excel(result_data, excel_output_path, elapsed) + # получаем имена файлов без пути + exe_1_name = os.path.basename(exe_1_path) + exe_2_name = os.path.basename(exe_2_path) + # + + export_to_excel(result_data, excel_output_path, elapsed, exe_1_name, exe_2_name) print(f"\033[92mResults exported to\033[0m {excel_output_path}") print(f'\033[92mAnalysis time\033[0m {elapsed} sec') os.startfile(excel_output_path) @@ -82,14 +86,20 @@ def read_results_table(output_path): conn.close() return result_list -def export_to_excel(result_data, excel_output_path, elapsed_time): +def export_to_excel(result_data, excel_output_path, elapsed_time, exe_1_name, exe_2_name): df = pd.DataFrame(result_data) df = df[['type', 'name', 'name2', 'description']] + + # Переименование столбцов + df.rename(columns={'name': exe_1_name, 'name2': exe_2_name}, inplace=True) + df['matches'] = ' ' df['elapsed'] = ' ' df.at[0, 'matches'] = len(result_data) df.at[0, 'elapsed'] = f'{elapsed_time:.2f} sec' df.to_excel(excel_output_path, index=False) + + # Форматирование Excel wb = load_workbook(excel_output_path) ws = wb.active green_fill = PatternFill(start_color="90EE00", end_color="90EE00", fill_type="solid")