_wfopen_s错误代码,当打开文件写入根文件夹时例如c:\ temp.bin

问题描述

我已经在根文件夹(c :)中传递了一个输​​出文件

我希望从_wfopen_s返回EACCES(13),这意味着我可以向用户报告一些其他错误信息。在我的机器上工作正常。

然后已在另一台计算机上测试了该exe。 EACCES不再返回,这次返回EINVAL(22)。在两台计算机上,运行exe的用户都具有管理员权限。

FILE * pFile = NULL;
errno_t err;
 
if (0 != (err = _wfopen_s (&pFile,outputFile.c_str(),L"wb")))
{
    MyErrorCode_t errcode = ((EACCES == err) ? ERR_OUTPUT_FILE_PERMISSON_DENIED : ERR_OUTPUT_FILE);
    ....

是否需要EINVAL?

为什么机器的行为会有所不同?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)