54得票17回答
LINK: 致命错误 LNK1104:无法打开文件 'D:\...\MyProj.exe'

使用Visual Studio 2010,当我短时间内构建+运行我的应用程序时,经常会出现以下错误。如果我等一两分钟再尝试,它就可以正常工作。Unlocker 声明没有句柄锁定可执行文件。 我该如何发现是什么在锁定它? 如果是 Visual Studio 自身锁定了文件,我该怎么做才能让它停止...

53得票15回答
自修改代码有哪些用途?

自修改代码有实际用途吗? 我知道它们可用于构建蠕虫/病毒,但我想知道是否存在一些程序员必须使用自修改代码的好原因。 有什么想法吗?假设情况也可以。

53得票6回答
如何手动编写可执行的Windows .exe文件(使用十六进制编辑器的机器码)?

我想知道如何仅使用十六进制编辑器编写像Hello World程序这样简单的东西。我知道我可以使用汇编语言和汇编器在接近机器级别上实现这个,但我只是想在玩具示例中尝试真正编写机器代码,例如Hello World。 这可以是一个简单的DOS .COM文件,我可以在DOSBox上运行它。但如果有人...

52得票9回答
可执行的war文件如何在没有maven的情况下启动jetty

我正在尝试制作一个“可执行”的war文件(java -jar myWarFile.war),它将启动托管在WAR文件中的webapp的Jetty web服务器。 我找到了一篇描述如何制作这种文件的网页: 然而,按照那个建议以及我认为制作可执行jar(war)文件的方式并没有起作用。 我有...

49得票5回答
如何判断一个.NET应用程序是在DEBUG模式还是RELEASE模式下编译的?

我在电脑上安装了一个应用程序。我该如何找出它是否是以DEBUG模式编译的? 我尝试使用.NET Reflector,但它没有显示任何具体信息。下面是我看到的内容:// Assembly APPLICATION_NAME, Version 8.0.0.15072 Location: C:\AP...

45得票2回答
为什么除了使用GOT之外,还需要存在PLT?

我知道在典型的ELF二进制文件中,函数通过过程链接表(PLT)被调用。函数的PLT条目通常包含一个跳转到全局偏移表(GOT)条目的指令。此条目将首先引用一些代码将实际函数地址加载到GOT中,并在第一次调用后包含实际函数地址(延迟绑定)。 确切地说,在进行延迟绑定之前,GOT条目指向PLT中的...

45得票6回答
为什么“可执行文件”与操作系统相关?

我知道每个CPU/架构都有自己的指令集,因此为特定CPU编写的程序(二进制文件)不能在其他CPU上运行。但我不太理解为什么可执行文件(例如 .exe 这样的二进制文件)不能在 Linux 上运行,却可以在 Windows 上运行,即使在同一台机器上。 这是一个基础问题,我期望的答案是 .ex...

45得票4回答
GHC编译的二进制文件是否需要GHC或者它们是独立的?

如果朋友想运行我的Haskell二进制文件,他是否必须先安装Haskell,还是可以直接运行该二进制文件? 这个答案在Mac、Windows和Linux上都一样吗?

45得票5回答
如何彻底删除可执行文件

我希望尽可能地减少文件大小 - 在Linux上: 一个ELF文件。我只需要里面运行所需的内容。 我尝试使用strip命令:strip --strip-all elf 但是它似乎没有做好: nm 仍然显示很多内容,而且二进制文件仍然很大。我该怎么做?

43得票2回答
编译一个独立的静态可执行文件

我正在尝试编译一个不使用动态加载器的可执行文件(ELF文件)。我构建了一个交叉编译器,将来自Linux的MIPS编译为我所制作的模拟器所用。在编译我的hello.cpp文件(hello world程序)时,我使用了-static-libgcc标志进行断言。然而,显然这还不够。因为我的可执行文件...