问题标签 [upx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
312 浏览

windows - UPX 如何处理没有重定位目录的应用程序?

我一直在对可执行加载器进行一些研究,让我感到困惑的一件事是它们如何处理需要在特定虚拟地址加载的可执行文件(即没有重定位记录)

我知道 UPX 有能力做到这一点,但我没有看到 UPX 源代码中是如何处理的(我什至不确定究竟是什么代码负责加载......)

我做了一个加载器,但它要求应用程序有一个重定位记录,所以它加载到哪个虚拟地址并不重要。

UPX 的 stub 的基地址为 0x400000,当它加载一个基地址为 0x400000 的可执行文件时,就没有问题了。这怎么可能,因为操作系统会拒绝您在当前进程的基地址分配虚拟内存的请求(至少在我看来是这样的)

我尝试在 UPX 源中搜索 VirtualAlloc,我认为这是完成此操作所需的功能,并且它仅在 UPX 源中出现一次(https://github.com/upx/upx/search?utf8=% E2%9C%93&q=VirtualAlloc)在一段看似无关的代码中,所以我很困惑。

0 投票
1 回答
101 浏览

c - 扩展 GNU make 隐式规则

我正在使用 GNU make隐式规则将我的二进制文件链接在一起,如下所示:

但是,我也希望之后能够foo使用UPX(通过调用upx ultra-brute foo)编译生成的二进制文件。当然,我可以这样做:

然而,这基本上迫使我重复隐含规则,而我真正想做的只是upx ultra-brute在它已经做的事情之后再调用。有没有办法得到我想要的东西,而基本上不必手动将隐式规则写入配方?

0 投票
1 回答
533 浏览

windows - 使用 UPX 打包 calc.exe

我想问是否有人可以解释一下,为什么我无法执行 Windows 工具的 UPX 打包版本:Windows 7 或 Windows 10 上的“calc.exe”(32 位版本),但在 Windows XP 上打包的“calc” .exe”运行没有问题(在所有转换中,我都没有收到错误消息,并且打包率从 50% 左右开始)。

这是因为 Windows 7 以来的 calc-versions 使用了更多的依赖项,例如 .NET,还是受到这些操作系统更复杂的安全机制的某种保护?

我正在使用最新的 UPX 版本 3.94。

此致,

安德烈亚斯

0 投票
1 回答
645 浏览

python - 启动时 UPX 错误图像和不可压缩异常

该脚本非常简单,无需 UPX。

启动后我的形象很差

pyinstaller myfile.py --upx-dir=C:\upx394w --onedir

启动exe时不起作用,我使用的是Windows 64位。

pyinstaller az1.py --onedir –noupx(Az1.exe) [作品]

现在我跑了,形象不好。唯一真正的问题可能是: NotCompressibleException 可能是问题但它似乎被压缩(完整的命令行输出)

值得注意的:

文件

0 投票
4 回答
867 浏览

docker - Alpine Docker 容器无法将 UPX 识别为可执行文件

堆垛机,

我正在使用 Docker 容器化我的应用程序。在下面的阶段,我正在尝试使用UPX打包它。

问题是当我构建图像时出现以下错误:

命令 '/bin/sh -c /usr/local/bin/upx --overlay=strip --best /usr/local/bin/ace' 返回一个非零代码:127

出于某种原因,容器无法将 upx 识别为可执行文件!谁能给我一些指示?

0 投票
0 回答
379 浏览

python-3.x - 在 macOS 中使用 UPX 减小可执行文件大小

我正在使用 PyInstaller 创建一个捆绑的应用程序。该应用程序包含 numpy,因此捆绑应用程序的最终大小> 600MB。我当然想压缩捆绑应用程序的大小,所以我通过brew install upx. 但是,PyInstaller 崩溃并出现以下错误。

1- macOS 有没有 UPX 甚至 PyIntaller 的替代品?

2-我可以修复这个错误吗?

3- PyInstaller 在选定文件上创建捆绑应用程序后,我可以手动运行 UPX 吗?如果是,您能否举一个 UPX 的命令行示例?

错误:

0 投票
1 回答
576 浏览

python - Pyinstaller 无法使用 PyQt5 正确构建

我一直在尝试使用 pyinstaller 构建一个项目。该项目正在使用 PyQt5,我无法正确构建它。UPX 和 python 在我的 PATH 中。我不想弄乱任何包 python 文件,所以我不知道该怎么做。这是cmd输出:

0 投票
0 回答
359 浏览

python - Windows 10(64位)下使用Python3(32位)+PyInstaller+UPX(32位)加载DLL失败

所以我exePyInstaller, UPXas 来生成可执行文件的大小。但是,生成的可执行文件UPX显示如下错误:

但是,如果我使用--noupx,生成的exe 功能完全没有问题。我相信UPX 损坏了一些库所需的 DLL 文件pandas,但我仍然想压缩尽可能多的 DLL 文件。我应该如何找出哪些 DLL 文件已损坏,以便将它们包含在--upx-exclude列表中?

0 投票
0 回答
104 浏览

android-ndk - 使用 UPX 压缩动态链接的 armeabi-v7a 可执行文件

armeabi-v7a是否可以使用 UPX压缩动态链接的可执行文件?

我正在使用ndk-build (r20b)UPX进行构建,UnknownExecutableFormatException除非我添加APP_LDFLAGS += -static到我的模块中,否则它总是会引发异常Android.mk。但是,这不是我可以做的事情,因为我的代码的其他部分(HTTP 客户端)使用getaddrinfo并且gethostbyname需要动态链接 libc 并且如果我静态链接会导致分段错误。我正在建造没有-fPIE.

我在网上看到了一些讨论 Windows .exe 文件的动态链接可执行压缩的线程,但是,当涉及到可执行文件时,我无法找到任何相关内容armeabi-v7a

这甚至可能吗?如果没有,请建议另一个可以执行此操作的二进制打包器(如果存在)。

0 投票
1 回答
137 浏览

python - 尝试在 Pyinstaller 中包含 UPX 目录时,WinError 5 访问被拒绝

我下载了最新版本的 UPX,将其解压缩到 C:/UPX 上的文件夹中。此文件夹现在包含 .exe 和提取的文件夹。Pyinstaller 要么根本不识别 UPX,要么它给了我:

84 信息:PyInstaller:4.0.dev0
84 信息:Python:3.7.6 (conda)
84 信息:平台:Windows-10-10.0.18362-SP0


运行“C:\UPX\upx -V”时出错:[WinError 5] 访问被拒绝


错误:执行命令失败!

我使用的代码是:

我从 Anaconda 提示符下以管理员身份运行它。当 UPX 文件位于我的脚本所在的当前目录中时,它根本无法识别 upx。

我正在遵循在线给出的所有建议,但我感觉我正在下载/尝试使用错误的 UPX 文件。我从这里下载:https : //github.com/upx/upx/releases/tag/v3.96 upx-3.96 版本的 .zip。我保存在此 C:/UPX 文件夹中的 .zip 和提取的文件夹。我究竟做错了什么?