以 null 终止 MASM / GetModuleFileName 中的字符串



在我的程序中,我从Windows API调用GetModuleFileName函数。该函数告诉我正在运行的.EXE文件的路径。

在 Windows XP 机器上,根据 MSDN,字符串 (szSrc) 不会以空值终止。

invoke GetModuleFileName,NULL,szSrc,255

如何空终止它?

您需要在末尾为变量添加一个零。

.data
szSrc db "Your string", 0

如果你需要在运行时这样做,你需要获取变量的长度(szSrc),然后你可以写这样的东西:

lea eax, szSrc
mov byte ptr [eax+szSrcLen], 0

注意:提供有效的长度很重要。如果您不知道正确的字符串长度,则无法制作空字符串。

相关内容

  • 没有找到相关文章

最新更新