我无法获取 .exe 文件的命令行参数

我无法获取 .exe 文件的命令行参数

我正在尝试获取此文件 FileASSASSIN.exe 的命令行参数 -http://www.portablefreeware.com/?id=1092

我尝试了这个:FileASSASSIN.exe /help,FileASSASSIN.exe /? 和其他变体,但没有作用。

我正在尝试将 FileASSASSIN 集成到 FileMenu Tools Portable 中,我需要使用参数才能使其工作 - FileMenu Tools 允许您从上下文菜单运行程序。我设法在不使用参数的情况下为 Unlocker Portable 做到这一点,但对于 FileASSASSIN,如果没有参数,它就无法工作。

答案1

没有可靠的方法可以从可执行文件中获取命令行参数。至少在作者或可执行文件不想提供该信息的情况下是这样。

因此我的答案对于任何可执行文件通常也有效:

您可以尝试SysInternals 字符串实用程序来转储所有人类可读的内容,也许你会发现一些东西。

通常输出很长,因此您需要将其转储到文本文件中,然后使用文本编辑器分析该文本文件

strings -n 3 -q myapplication.exe > params.txt

首次尝试时您可以使用字符串本身:

strings -q strings.exe > strings.txt

您应该找到未记录的/accepteula开关。其他开关很难找到,因为它们是单字符开关。

提前检查可执行文件是否被类似这样的程序打包韓輯。如果是,请在运行前解压字符串如果可执行文件是 UPX 打包的,你应该在开头得到类似这样的输出:

!This program cannot be run in DOS mode.
Rich
UPX0
UPX1
.rsrc
1.22
UPX!

但即使您没有找到任何东西,可能仍然有命令行参数,但它们不是以人类可读的格式提供的(但可能是加密的)。

当然,还要考虑一个选项,即可执行文件不接受任何命令行参数。

相关内容