Masm调用createfile不起作用

时间:2014-12-03 05:36:46

标签: winapi assembly masm createfile irvine32

我正在尝试在Masm代码中的C:\下创建一个文件。 但永远不会成功。我不知道代码出了什么问题。

INCLUDE Irvine32.inc


.data
fileName BYTE "C:\\haha.txt",0
fileHandle HANDLE ?

.code

main PROC

INVOKE CreateFile,
ADDR filename, GENERIC_WRITE, DO_NOT_SHARE, null, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL,0


exit
main ENDP
END main

如果我改变了

fileName BYTE "haha.txt",0

它会成功将文件haha.txt写入程序的文件夹中。 我不明白为什么它不写出C:\ 另外,我正在使用visual studio 2013,我通过在调试下运行它来运行程序,无需调试即可启动。

1 个答案:

答案 0 :(得分:0)

这是一个许可问题。如果以管理员身份运行程序,您将看到该文件已创建。 只需使用您的代码对其进行测试即可。