问题标签 [portable-executable]

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 投票
4 回答
554 浏览

windows - Windows 可移植可执行文件如何跨机器架构移植

Windows 可移植可执行文件真的可以跨机器架构移植吗?如果是这样,它是如何工作的?如果不是,那么“可移植可执行文件”是什么意思或可执行文件的哪一部分是可移植的?

谢谢,西瓦钱德兰

0 投票
3 回答
1456 浏览

c# - Write a value into PE file

I want to try the following:

I have a C# program which takes a file as input and calculate MD5 algorithm for these five MD5. My algorithm has a unique value for each file; this value is a 128 bit value, so I want to use this technique to protect my programs by saving the output value of md5 algorithm into a my PE file (let's say the value is X). The PE will calculate the MD5 value again (for itself) (let's say the value is Y) and then compare X with Y. If it's the same value it's ok and run; else, it'll exit.

My Question is: how do I write my Value into the PE file? Important notice : my algorithm has been written with C# so I want a way to write into PE file using C# language.

0 投票
1 回答
106 浏览

debugging - 是否有可能在调试模式下运行便携式 exe(逐步)?

我想使用便携式 exe 进行一些研究,在这里我需要一些工具来运行 PE 调试模式..请帮助我。如果有任何工具可用于逐步运行 pe..

提前致谢。

0 投票
2 回答
338 浏览

compiler-construction - EXE 文件中部分和内存的对齐方式

在 Mosa IL 编译器中创建使用时,我需要指定 EXE 文件中的部分和内存的对齐方式是什么?

谢谢。

0 投票
2 回答
805 浏览

metadata - 如何添加 PE 元数据?

Windows PE(便携式可执行文件)文件包含出现在文件的“属性”对话框中“详细信息”选项卡下的元数据。似乎任意元数据可以出现在那里。

我想做的是将一段元数据添加到我构建的 C# 类库中,其值是来自构建项目的 git repo HEAD 的提交 ID。我不能只使用 CLRAssemblyVersionAttribute来设置 git commit id,因为 CLR 要求它以标准a.b.c.d版本格式显示。此外,理想情况下,我希望保留对用户有意义的版本号,但总是有办法查找,给定实际的 PE 文件,可以重新创建它的提交 ID。

如果有一个托管 API 可以做到这一点,那就更好了,但我愿意 P/Invoke 来完成这件事。

0 投票
1 回答
863 浏览

export - 如何从序数中找到导出的函数名称(按序数导出)?

我在导出目录中尝试,我通过在 addressoffnnames 属性的帮助下浏览目录获得了导出的函数名称(按名称导出)......这里,comctl32.dll(api)中的示例总 fn 名称 420,但没有 fnnames 118 (按名称导出),其他 302 个 fns 仅由序数导出...我也尝试使用 dumpbin,它没有显示任何来自序数的(fn 名称相对于序数)...帮助我,如何将 api 与序数关联以检索导出函数名称...在此先感谢。

0 投票
2 回答
2180 浏览

dll - 如何从 .dll(系统)中获取导出的函数名称?

我想要从 DLL 导出的函数名称列表(按名称和序号)。我使用导出目录表获得了函数名称(按名称导出),但我无法检索按序号导出的导出函数列表。

请帮我找回它。我也试过那个dll的.lib,还有,显示NONAME。在此先感谢传说

0 投票
5 回答
2437 浏览

java - PE 标头要求

PE文件(PE/COFF)的要求是什么?应该设置哪些字段,哪个值,使其能够在 Windows 上“运行”(即执行“ret”指令然后关闭,没有错误)。

我首先要构建的库是链接器:现在,我遇到的问题是 PE 文件 (PE/COFF)。我不知道 PE 文件在我的平台上实际执行之前“需要”什么。我的测试平台是Vista。当我通过双击执行它时,我收到一条错误消息,说“这不是一个有效的 Win32 可执行文件。 ”我收到“拒绝访问”。使用 CLI cmd执行它时。我有两个部分,.text 和.data。

我已经实现了几个在线文档(即 MSDN 和其他一些第三方文档)提供的 PE 标头。如果我使用十六进制编辑器,它看起来几乎就像一个普通的 PE 文件。我不使用任何导入、IAT 和 PE 标头中的任何目录。

编辑:我的 Windows 说,我添加了一个导入表,但仍然不是有效的 .exe 文件。我尝试使用最小的 PE 文件指南中也提到的值。没运气。真的,我似乎无法弄清楚的唯一一件事是什么是必需的,什么不是。一些指南告诉我一切都是必需的,而另一些指南则说贬低:它可以为零。

我希望这是足够的信息。先感谢您。


当前 PE 标头的原始数据(按要求):

0 投票
2 回答
923 浏览

hook - 如何从系统 dll 中挂钩 Api 函数?

我想从系统dll重定向真实函数调用的函数调用。我正在使用可移植可执行文件,我可以获得系统dll(advapi32.dll)的IAT,这里函数地址调用系统内存地址,我想重定向到我指定的地址..它怎么可能?....

0 投票
3 回答
3693 浏览

c++ - 通过 PE 标头找出 PE 文件在哪里结束?

我想将一些二进制数据附加到我的可执行文件的末尾。这只是为了让我的程序变成一个文件。我尝试使用 UpdateResource,但我用我的特定数据在其中遇到了一些错误,所以我必须使用另一种解决方案。所以我需要知道原始文件的大小来确定是否真的有任何数据附加到它上面。是否可以从 PE 标头中获取此信息?

谢谢!