从.zip在powershell中以.exe形式运行.png



我试图伪装一个可执行文件,遇到了一些问题,但只有一个问题我需要帮助,我正在从cmd:运行

PowerShell -ExecutionPolicy bypass -noprofile -windowstyle hidden start-process C:Usersb0nkeAppDataRoaming.minecraftresourcepacks§4VotPack§cOverlay.zipassetsminecrafttexturesitemsclock.png

你可以看到,我正试图在.zip中运行.png。但我想将.png作为可执行文件打开,这可能吗?

额外信息:我可以从cmd中以.exe的形式运行.png,但我使用powershell是因为它可以在存档中运行文件,如果我在存档之外运行它,它会是这样的:

C:Usersb0nkeAppDataRoaming.minecraftresourcepacksclock.png

请提供一些提示或解决方案。

否,在PowerShell中-明智地-您不能使用不可执行的文件扩展名(如.png(直接执行可执行文件(伪装(-PowerShell遵循Windows(GUI(shell,它打开带有为手头的文件扩展名注册的应用程序的文件(在.png的情况下,默认情况下是Photos,这只是抱怨无法识别的图像格式(。

令人难以置信的是,正如你所说的,相比之下,cmd.exe显然在采取行动之前明确检查了文件格式本身,并直接执行可执行文件,即使它们碰巧具有不可执行的文件扩展名。

注:

  • 也许不用说,从安全角度来看,PowerShell的行为更可取,因为它可以防止毫无戒心的用户无意中执行可执行文件,这些用户有理由认为给定文件确实是其文件扩展名所宣传的类型,而不是伪装的可执行文件

如果你真的需要这个功能(很难想象非欺骗性的用途(:

原则上,您可以从PowerShell调用cmd.exeCLI以使用前者的功能;例如:

cmd /c .clock.png

不过,这只适用于cmd.exe也能理解的文件路径。

它不适用于以ZIP存档内的文件为目标的路径,但我也不知道它在PowerShell中起作用,这与您所说的不同。

它基本上与运行exe-相同

start G:image.png

start $usbDriveLetter"image.png"

image.png

您需要将其更改为$env:USERNAME,而不是$USERNAME

相关内容

  • 没有找到相关文章

最新更新