0

在我的程序中,我从 Windows Api 调用 GetModuleFileName 函数。该函数告诉我正在运行的 *.exe 的路径。

根据MSDN ,在 Windows XP 机器上,字符串 (szSrc) 不是以空值结尾的。

invoke GetModuleFileName,NULL,szSrc,255

我怎样才能终止它?

4

1 回答 1

0

您需要在最后为您的变量添加一个零

.data
szSrc db "Your string",0

如果您需要在运行时执行此操作,您需要获取变量的长度(szSrc),那么您可以这样编写:

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

注意:提供一个有效的长度很重要..,如果您不知道正确的字符串长度,那么就不可能创建一个空字符串。

于 2013-09-26T20:26:13.560 回答