Windows 为什么系统调用(CreateProcess、stat和fopen)会说文件不';不存在,当它存在的时候?
我有一个C程序,我刚刚注意到它在一些文件/路径上有一些问题。。。 不确定这是什么时候停止工作的,但我猜是因为Windows-7 我可以使用CreateProcess()、fstat()和fopen()来访问文件(在这种情况下,我使用的是C:\windows\system32\soundrecorder.exe),当文件确实存在并且我能够使用explorer或CMD.exe shell执行该文件时,使用任何其他系统调用访问该文件都会返回一个错误,表明该文件不存在Windows 为什么系统调用(CreateProcess、stat和fopen)会说文件不';不存在,当它存在的时候?,windows,Windows,我有一个C程序,我刚刚注意到它在一些文件/路径上有一些问题。。。 不确定这是什么时候停止工作的,但我猜是因为Windows-7 我可以使用CreateProcess()、fstat()和fopen()来访问文件(在这种情况下,我使用的是C:\windows\system32\soundrecorder.exe),当文件确实存在并且我能够使用explorer或CMD.exe shell执行该文件时,使用任何其他系统调用访问该文件都会返回一个错误,表明该文件不存在 我猜这是“C”程序的某种权限问题;
我猜这是“C”程序的某种权限问题;然而,如果是这样的话,当我试图通过explorer或CMD.exe运行它时,我不会看到同样的问题吗?64位windows和32位程序?多语言Windows版本?32位进程被重定向到c:\Windows\syswow64。要启动64位版本,请使用c:\windows\sysnative\soundrecorder.exe。或生成64位版本的程序。右键单击程序并以管理员身份运行。还可以对不在
system32
目录中的文件进行测试。@Aaron。。。似乎没有matter@Hans... 成功了!