我该如何去了解Linux程序集中的资源文件?我想逐字节阅读它,并且我发现的所有内容都是在Windows中使用的。我刚刚开始学习汇编,似乎很少有好的资源。我使用NASM汇编器。在Linux程序集中创建一个资源文件
-1
A
回答
1
一般来说,你没有。 Linux不会像Windows那样在可执行文件中嵌入资源数据。
在技术上可以把数据嵌入到可执行文件 - the easiest way is by using objcopy
:
objcopy --input binary \
--output elf32-i386 \
--binary-architecture i386 \
data.bin data.o
但是,不要指望除了你自己的可执行什么读取数据。例如,这不是您将图标附加到GUI可执行文件的方式;这是用完全不同的方法完成的。
+0
我将如何阅读该文件?在你的链接上的例子是C. – Peyto
+1
因此在NASM中,你需要'extern _binary_data_txt_start',然后是'mov rsi,_binary_data_txt_start'来获得指向'rsi'中数据的指针。或'mov al,[_binary_data_txt_start]'获取'al'中的第一个字节。 –
相关问题
- 1. 在winforms应用程序中创建文件资源管理器
- 2. 如何创建一个Windows资源嵌入.NET程序集,从文本开始?
- 3. 加载一个卫星程序集资源文件
- 4. 如何在与程序集一起部署的ASP.NET的bin文件夹中创建资源文件?
- 5. 程序集资源
- 6. 在c编程中在linux下创建一个utf8文件
- 7. 使用AssemblyBuilder构建资源程序集
- 8. 如何为控制台应用程序创建资源文件?
- 9. 如何为WinForm应用程序创建全局资源文件?
- 10. 在C++中创建一个Linux进程
- 11. 在linux中创建文件
- 12. 在linux中创建文件
- 13. C++在Linux中创建2个文件
- 14. 用自定义文件夹中的资源文件创建一个Maven工件
- 15. 从资源加载多个程序集
- 16. 在资源文件夹中创建子文件夹
- 17. 在Linux上,由哪个程序创建的文件?
- 18. 删除Linux程序集中的一个文件x86
- 19. 如何排除Maven程序集中的资源文件?
- 20. 在Linux中断处理程序中创建一个小延迟
- 21. 为程序创建一个.jar文件
- 22. Maven程序集:生成资源zip文件并将其包含在主程序集zip文件中
- 23. 使用Tomcat创建文件资源JNDI
- 24. 未创建Maven资源文件夹
- 25. 创建资源文件的工具
- 26. 使用C#创建资源文件
- 27. Maven程序集 - 创建zip文件
- 28. 在windows应用程序中创建一个文本文件
- 29. 将应用程序包装在Ubuntu Linux中创建sh文件
- 30. 从资源创建一个CBitmap ID
为什么选择倒票? – Peyto
这个问题是非常相似的这个[SO问题](https://stackoverflow.com/questions/42235175/how-do-i-add-contents-of-text-file-as-a-section-in- an-elf文件)。其中一个答案显示了如何使用'objcopy'来使用NASM(其中一个例子)。虽然它是关于文本文件,但它也适用于二进制文件。 –