dashingsoft / pyarmor

A tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.

Home Page:http://pyarmor.dashingsoft.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[BUG] `代码加密bug`

hayingbs opened this issue · comments

我项目里有一个注册表读写的工具类,主要用于一些重要的配置长久保持。

项目加包后,可以正常运行

但加密这个注册表工具类,在运行时会自动关闭

此问题不影响项目,我不加密这个工具类就可以了。

提交此问题,主要是希望pyarmor 越来越好

工具类代码:

-- coding: utf-8 --

from PyQt5.QtCore import QSettings

from configs.configs import COMPANY_NAME, APP_NAME, QURL
from utils.print import print

json_file_path = f'{QURL}/config/app.ini' # json文件路径

def MyQSettings():
"""
系统配置文件,如果注册表写入失败,就写到配置文件中(json_file_path)
:return:
"""
try:
return QSettings(COMPANY_NAME, APP_NAME)
except Exception as e:
print(e)
return QSettings(json_file_path, QSettings.IniFormat | QSettings.AutoSync)

commented

谢谢,但是有两个问题:

  1. 加密使用的完整选项是什么?
  2. 这个脚本引用到了 from configs.configs 这个我是没有办法重现的

最好的方式是提供一个可以独立运行的脚本,然后使用命令把重现步骤写一下。例如

pyarmor gen --enable-rft foo.py
python dist/foo.py

不好意思,我上面说的不对。
我重复试了多些,
发现,UI/ 加密后会打开程序会闪退。
pyarmor gen --pack dist/yihaozitie/yihaozitie.exe --enable-bcc -r UI/ yihaozitie.py
但,我把UI 的文件 一个个列出来,就可以正常运行
pyarmor gen --pack dist/yihaozitie/yihaozitie.exe --enable-bcc -r UI/main.py UI/seed.py UI/users.py UI/en.py UI/hz.py UI/sx.py yihaozitie.py
不知道是啥问题。
image

不好意思,我上面说的不对。
我重复试了多些,
发现,UI/ 加密后会打开程序会闪退。
pyarmor gen --pack dist/yihaozitie/yihaozitie.exe --enable-bcc -r UI/ yihaozitie.py
但,我把UI 的文件 一个个列出来,就可以正常运行
pyarmor gen --pack dist/yihaozitie/yihaozitie.exe --enable-bcc -r UI/main.py UI/seed.py UI/users.py UI/en.py UI/hz.py UI/sx.py yihaozitie.py
不知道是啥问题。

不好意思,我上面说的不对。
我重复试了多些,
发现,UI/ 加密后会打开程序会闪退。
pyarmor gen --pack dist/yihaozitie/yihaozitie.exe --enable-bcc -r UI/ yihaozitie.py
但,我把UI 的文件 一个个列出来,就可以正常运行
pyarmor gen --pack dist/yihaozitie/yihaozitie.exe --enable-bcc -r UI/main.py UI/seed.py UI/users.py UI/en.py UI/hz.py UI/sx.py yihaozitie.py
不知道是啥问题。

谢谢,但是有两个问题:

  1. 加密使用的完整选项是什么?
  2. 这个脚本引用到了 from configs.configs 这个我是没有办法重现的

最好的方式是提供一个可以独立运行的脚本,然后使用命令把重现步骤写一下。例如

pyarmor gen --enable-rft foo.py
python dist/foo.py

还有个问题请教:
在.pyarmor 中back中出现的文件都是加密成功的吗?
image

commented

从控制台日志,以及查看文档中深入了解 RCC 模式RFT 模式 中的内容